public class LookupUtils
extends java.lang.Object
MethodHandles.Lookup| Constructor and Description |
|---|
LookupUtils() |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
canAccess(java.lang.Class<?> wanted,
java.lang.Class<?> clazz)
Reimplementation of
VerifyAccess.isTypeVisible(Class, Class) |
static boolean |
canAccess(java.lang.invoke.MethodHandles.Lookup lookup,
java.lang.Class<?> clazz)
Check if the given lookup can access the given class
|
static java.lang.invoke.MethodHandles.Lookup |
getIn(java.lang.ClassLoader classLoader)
Get a
MethodHandles.Lookup in the given ClassLoaderThis method defines a new class in the given ClassLoader to get the MethodHandles.Lookup |
static java.lang.invoke.MethodHandles.Lookup |
resolveLookup(java.lang.invoke.MethodHandles.Lookup lookup,
java.lang.Class<?> accessed)
Resolve a lookup to access a given class
|
@Nonnull
public static java.lang.invoke.MethodHandles.Lookup getIn(@Nonnull
java.lang.ClassLoader classLoader)
MethodHandles.Lookup in the given ClassLoaderClassLoader to get the MethodHandles.LookupclassLoader - The class loader to get the lookup in@Nonnull
public static java.lang.invoke.MethodHandles.Lookup resolveLookup(@Nonnull
java.lang.invoke.MethodHandles.Lookup lookup,
@Nonnull
java.lang.Class<?> accessed)
lookup - The lookup to resolveaccessed - The class to accessjava.lang.IllegalStateException - If the lookup can't be resolved to access the given classpublic static boolean canAccess(@Nonnull
java.lang.invoke.MethodHandles.Lookup lookup,
@Nonnull
java.lang.Class<?> clazz)
lookup - The lookup to checkclazz - The class to checkpublic static boolean canAccess(@Nonnull
java.lang.Class<?> wanted,
@Nonnull
java.lang.Class<?> clazz)
VerifyAccess.isTypeVisible(Class, Class)wanted - The class that should be visibleclazz - The class that should be able to see the wanted class