< prev index next >
src/java.base/share/classes/jdk/internal/access/JavaLangAccess.java
Print this page
@@ -24,10 +24,12 @@
*/
package jdk.internal.access;
import java.lang.annotation.Annotation;
+import java.lang.invoke.MethodHandle;
+import java.lang.invoke.MethodType;
import java.lang.module.ModuleDescriptor;
import java.lang.reflect.Executable;
import java.lang.reflect.Method;
import java.net.URI;
import java.nio.charset.CharacterCodingException;
@@ -146,10 +148,18 @@
* Defines a class with the given name to a class loader.
*/
Class<?> defineClass(ClassLoader cl, String name, byte[] b, ProtectionDomain pd, String source);
/**
+ * Defines a class with the given name to a class loader with
+ * the given flags and class data.
+ *
+ * @see java.lang.invoke.MethodHandles.Lookup#defineClass
+ */
+ Class<?> defineClass(ClassLoader cl, Class<?> lookup, String name, byte[] b, ProtectionDomain pd, boolean initialize, int flags, Object classData);
+
+ /**
* Returns a class loaded by the bootstrap class loader.
*/
Class<?> findBootstrapClassOrNull(ClassLoader cl, String name);
/**
@@ -317,6 +327,16 @@
*
* @param caller on behalf of which the library is being loaded
* @param library name of the library to load
*/
void loadLibrary(Class<?> caller, String library);
+
+ /**
+ * Get protection domain of the given Class
+ */
+ ProtectionDomain protectionDomain(Class<?> c);
+
+ /**
+ * Get a method handle of string concat helper method
+ */
+ MethodHandle stringConcatHelper(String name, MethodType methodType);
}
< prev index next >