public class ReflectionUtils extends Object
This class contains utility methods to determine which class called the current class to multiple levels of depth. Calls used to handle the groovy MOP are excluded from the level counting.
Type Params | Return Type | Name and description |
---|---|---|
|
static boolean |
checkAccessible(Class<?> callerClass, Class<?> declaringClass, int memberModifiers, boolean allowIllegalAccess) |
|
static boolean |
checkCanSetAccessible(AccessibleObject accessibleObject, Class<?> caller) |
|
static Class |
getCallingClass() Get the immediate calling class, ignoring MOP frames. |
|
static Class |
getCallingClass(int matchLevel) Get the called that is matchLevel stack frames before the call, ignoring MOP frames. |
|
static Class |
getCallingClass(int matchLevel, Collection<String> extraIgnoredPackages) Get the called that is matchLevel stack frames before the call, ignoring MOP frames and desired exclude packages. |
|
static List<Method> |
getDeclaredMethods(Class<?> type, String name, Class<?> parameterTypes) |
|
static List<Method> |
getMethods(Class<?> type, String name, Class<?> parameterTypes) |
|
static boolean |
isCallingClassReflectionAvailable() Determine whether or not the getCallingClass methods will return any sensible results. |
|
static Optional<AccessibleObject> |
makeAccessible(AccessibleObject ao) |
|
static AccessibleObject[] |
makeAccessible(AccessibleObject[] aoa) |
|
static Optional<AccessibleObject> |
makeAccessibleInPrivilegedAction(AccessibleObject ao) |
|
static boolean |
trySetAccessible(AccessibleObject ao) |
Get the immediate calling class, ignoring MOP frames.
Get the called that is matchLevel stack frames before the call, ignoring MOP frames.
matchLevel
- how may call stacks down to look.
If it is less than 1 it is treated as though it was 1.Get the called that is matchLevel stack frames before the call, ignoring MOP frames and desired exclude packages.
matchLevel
- how may call stacks down to look.
If it is less than 1 it is treated as though it was 1.extraIgnoredPackages
- A collection of string names of packages to exclude
in addition to the MOP packages when counting stack frames.Determine whether or not the getCallingClass methods will return any sensible results. On JVMs that are not Sun derived i.e. (gcj, Harmony) this will likely return false. When not available all getCallingClass methods will return null.