From 3b9bbff2f20041a82e4a0f59b332a233befb221c Mon Sep 17 00:00:00 2001 From: Eric Bottard Date: Thu, 18 May 2017 17:01:25 +0200 Subject: [PATCH] Fix completion with arity != 1 Fixes #24 Handle arrays and primitives --- .../standard/StandardParameterResolver.java | 35 ++++++++---- .../shell2/standard/Remote.java | 16 +++++- .../StandardParameterResolverTest.java | 54 +++++++++---------- .../shell2/samples/standard/Commands.java | 9 +++- 4 files changed, 73 insertions(+), 41 deletions(-) diff --git a/spring-shell2-core/src/main/java/org/springframework/shell2/standard/StandardParameterResolver.java b/spring-shell2-core/src/main/java/org/springframework/shell2/standard/StandardParameterResolver.java index b849e062..a9aea569 100644 --- a/spring-shell2-core/src/main/java/org/springframework/shell2/standard/StandardParameterResolver.java +++ b/spring-shell2-core/src/main/java/org/springframework/shell2/standard/StandardParameterResolver.java @@ -16,8 +16,7 @@ package org.springframework.shell2.standard; -import static org.springframework.shell2.Utils.unCamelify; - +import java.lang.reflect.Array; import java.lang.reflect.Method; import java.lang.reflect.Parameter; import java.util.ArrayList; @@ -48,6 +47,9 @@ import org.springframework.shell2.Utils; import org.springframework.stereotype.Component; import org.springframework.util.Assert; import org.springframework.util.ConcurrentReferenceHashMap; +import org.springframework.util.ObjectUtils; + +import static org.springframework.shell2.Utils.unCamelify; /** * Default ParameterResolver implementation that supports the following features: