W3cubDocs

/OpenJDK 21

Class SecureLookupSupplier

java.lang.Object
jdk.dynalink.SecureLookupSupplier
Direct Known Subclasses:
CallSiteDescriptor
public class SecureLookupSupplier extends Object
Provides security-checked access to a MethodHandles.Lookup object. See getLookup() for details.

Field Summary

Modifier and Type Field Description
static final String GET_LOOKUP_PERMISSION_NAME
The name of a runtime permission required to successfully invoke the getLookup() method.

Constructor Summary

Constructor Description
SecureLookupSupplier(MethodHandles.Lookup lookup)
Creates a new secure lookup supplier, securing the passed lookup.

Method Summary

Modifier and Type Method Description
final MethodHandles.Lookup getLookup()
Returns the lookup secured by this SecureLookupSupplier.
protected final MethodHandles.Lookup getLookupPrivileged()
Returns the value of getLookup() without a security check.

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

GET_LOOKUP_PERMISSION_NAME

public static final String GET_LOOKUP_PERMISSION_NAME
The name of a runtime permission required to successfully invoke the getLookup() method.
See Also:

Constructor Details

SecureLookupSupplier

public SecureLookupSupplier(MethodHandles.Lookup lookup)
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

public final MethodHandles.Lookup getLookup()
Returns the lookup secured by this SecureLookupSupplier.
Returns:
the lookup secured by this SecureLookupSupplier.
Throws:
SecurityException - if the secured lookup isn't the MethodHandles.publicLookup(), and a security manager is present, and a check for RuntimePermission("dynalink.getLookup") fails.

getLookupPrivileged

protected final MethodHandles.Lookup getLookupPrivileged()
Returns the value of getLookup() without a security check. Can be used by subclasses to access the lookup quickly.
Returns:
same as returned value of getLookup().

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/jdk.dynalink/jdk/dynalink/SecureLookupSupplier.html