Package com.sun.el.util
Class ReflectionUtil
java.lang.Object
com.sun.el.util.ReflectionUtil
Utilities for Managing Serialization and Reflection
- Version:
- $Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: kchung $
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
private static class
private static class
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) static Object[]
buildParameters
(ELContext context, Class<?>[] parameterTypes, boolean isVarArgs, Object[] params) static Method
findMethod
(Class<?> clazz, String methodName, Class<?>[] paramTypes, Object[] paramValues) private static ReflectionUtil.Wrapper
findMostSpecificWrapper
(List<ReflectionUtil.Wrapper> candidates, Class<?>[] matchingTypes, boolean elSpecific, String errorMsg) private static ReflectionUtil.Wrapper
findWrapper
(Class<?> clazz, List<ReflectionUtil.Wrapper> wrappers, String name, Class<?>[] paramTypes, Object[] paramValues) static Class
protected static Class
forNamePrimitive
(String name) private static Class
<?> getBoxingTypeIfPrimitive
(Class<?> clazz) private static Class<?>[]
getComparingParamTypesForVarArgsMethod
(Class<?>[] paramTypes, int length) (package private) static Constructor
<?> getConstructor
(Class<?> type, Constructor<?> c) (package private) static Method
static PropertyDescriptor
getPropertyDescriptor
(Object base, Object property) private static Class<?>[]
getTypesFromValues
(Object[] values) static Object
invokeMethod
(ELContext context, Method m, Object base, Object[] params) (package private) static boolean
isAssignableFrom
(Class<?> src, Class<?> target) private static boolean
isCoercibleFrom
(Object src, Class<?> target) private static int
isMoreSpecific
(ReflectionUtil.Wrapper wrapper1, ReflectionUtil.Wrapper wrapper2, Class<?>[] matchingTypes, boolean elSpecific) private static int
isMoreSpecific
(Class<?> type1, Class<?> type2, Class<?> matchingType, boolean elSpecific) private static final String
paramString
(Class<?>[] types) static Class[]
toTypeArray
(String[] s) Converts an array of Class names to Class typesstatic String[]
toTypeNameArray
(Class[] c) Converts an array of Class types to Class names
-
Field Details
-
EMPTY_STRING
-
PRIMITIVE_NAMES
-
PRIMITIVES
-
-
Constructor Details
-
ReflectionUtil
private ReflectionUtil()
-
-
Method Details
-
forName
- Throws:
ClassNotFoundException
-
forNamePrimitive
-
toTypeArray
Converts an array of Class names to Class types- Parameters:
s
-- Returns:
- The array of Classes
- Throws:
ClassNotFoundException
-
toTypeNameArray
Converts an array of Class types to Class names- Parameters:
c
-- Returns:
- The array of Classes
-
getPropertyDescriptor
public static PropertyDescriptor getPropertyDescriptor(Object base, Object property) throws ELException, PropertyNotFoundException - Parameters:
base
- The base objectproperty
- The property- Returns:
- The PropertyDescriptor for the base with the given property
- Throws:
ELException
PropertyNotFoundException
-
invokeMethod
-
findMethod
-
findWrapper
private static ReflectionUtil.Wrapper findWrapper(Class<?> clazz, List<ReflectionUtil.Wrapper> wrappers, String name, Class<?>[] paramTypes, Object[] paramValues) -
findMostSpecificWrapper
private static ReflectionUtil.Wrapper findMostSpecificWrapper(List<ReflectionUtil.Wrapper> candidates, Class<?>[] matchingTypes, boolean elSpecific, String errorMsg) -
isMoreSpecific
private static int isMoreSpecific(ReflectionUtil.Wrapper wrapper1, ReflectionUtil.Wrapper wrapper2, Class<?>[] matchingTypes, boolean elSpecific) -
isMoreSpecific
-
getBoxingTypeIfPrimitive
-
getComparingParamTypesForVarArgsMethod
-
paramString
-
isAssignableFrom
-
isCoercibleFrom
-
getTypesFromValues
-
getMethod
-
getConstructor
-
buildParameters
-