public abstract class ReflectionHelper extends ObjectSE
コンストラクターと説明 |
---|
ReflectionHelper() |
修飾子と型 | メソッドと説明 |
---|---|
static boolean | convertAllArguments(TypeConverter converter, ObjectSE[] arguments, MethodSE method) 指定された引数のセットをリクエストされた型に変換します。 |
static int | getTypeDifferenceWeight(ListSE<TypeDescriptor> paramTypes, ListSE<TypeDescriptor> argTypes) MethodInvoker.getTypeDifferenceWeight(Class[], Object[]) に基づいていますが、TypeDescriptors で動作します。 |
static ObjectSE[] | setupArgumentsForVarargsInvocation(ClassSE<?>[] requiredParameterTypes, ObjectSE... args) 引数をパッケージ化して、requiredParameterTypes で期待されるものと正しく一致するようにします。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public static int getTypeDifferenceWeight(ListSE<TypeDescriptor> paramTypes, ListSE<TypeDescriptor> argTypes)
MethodInvoker.getTypeDifferenceWeight(Class[], Object[])
に基づいていますが、TypeDescriptors で動作します。public static boolean convertAllArguments(TypeConverter converter, ObjectSE[] arguments, MethodSE method) throws SpelEvaluationException
converter
- 型変換に使用するコンバーター arguments
- リクエストされたパラメーター型に変換する引数 method
- ターゲットメソッド SpelEvaluationException
- 変換に問題がある場合 public static ObjectSE[] setupArgumentsForVarargsInvocation(ClassSE<?>[] requiredParameterTypes, ObjectSE... args)
例: 2 番目のパラメーターが String...
として宣言されたために requiredParameterTypes が (int, String[])
の場合、引数が [1,"a","b"]
の場合、期待される型に一致させるために [1,new String[]{"a","b"}]
として再パッケージ化する必要があります。
requiredParameterTypes
- 呼び出し用のパラメーターの型 args
- 呼び出しに備えてセットアップする引数