java.lang.Object
jdk.dynalink.SecureLookupSupplier
- Direct Known Subclasses:
CallSiteDescriptor
Provides security-checked access to a
MethodHandles.Lookup object.
See getLookup() for details.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe name of a runtime permission required to successfully invoke thegetLookup()method. -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new secure lookup supplier, securing the passed lookup. -
Method Summary
Modifier and TypeMethodDescriptionfinal MethodHandles.LookupReturns the lookup secured by thisSecureLookupSupplier.protected final MethodHandles.LookupReturns the value ofgetLookup()without a security check.
-
Field Details
-
GET_LOOKUP_PERMISSION_NAME
The name of a runtime permission required to successfully invoke thegetLookup()method.- See Also:
-
-
Constructor Details
-
SecureLookupSupplier
Creates a new secure lookup supplier, securing the passed lookup.- Parameters:
lookup- the lookup to secure. Can not be null.- Throws:
NullPointerException- if null is passed.
-
-
Method Details
-
getLookup
Returns the lookup secured by thisSecureLookupSupplier.- Returns:
- the lookup secured by this
SecureLookupSupplier. - Throws:
SecurityException- if the secured lookup isn't theMethodHandles.publicLookup(), and a security manager is present, and a check forRuntimePermission("dynalink.getLookup")fails.
-
getLookupPrivileged
Returns the value ofgetLookup()without a security check. Can be used by subclasses to access the lookup quickly.- Returns:
- same as returned value of
getLookup().
-