Interface LoaderDelegate

public interface LoaderDelegate

This interface specifies the loading specific subset of ExecutionControl. For use in encapsulating the ClassLoader implementation.

Since:
9

Methods

Modifier and Type Method Description
void addToClasspath​(String path)

Adds the path to the execution class path.

void classesRedefined​(ExecutionControl.ClassBytecodes[] cbcs)

Notify that classes have been redefined.

Class<?> findClass​(String name)

Finds the class with the specified binary name.

void load​(ExecutionControl.ClassBytecodes[] cbcs)

Attempts to load new classes.

Methods

load

void load(ExecutionControl.ClassBytecodes[] cbcs)
   throws ExecutionControl.ClassInstallException,
          ExecutionControl.NotImplementedException,
          ExecutionControl.EngineTerminationException

Attempts to load new classes.

Parameters:
cbcs - the class name and bytecodes to load
Throws:
ExecutionControl.ClassInstallException - exception occurred loading the classes, some or all were not loaded
ExecutionControl.NotImplementedException - if not implemented
ExecutionControl.EngineTerminationException - the execution engine has terminated

classesRedefined

void classesRedefined(ExecutionControl.ClassBytecodes[] cbcs)

Notify that classes have been redefined.

Parameters:
cbcs - the class names and bytecodes that have been redefined

addToClasspath

void addToClasspath(String path)
             throws ExecutionControl.EngineTerminationException,
                    ExecutionControl.InternalException

Adds the path to the execution class path.

Parameters:
path - the path to add
Throws:
ExecutionControl.EngineTerminationException - the execution engine has terminated
ExecutionControl.InternalException - an internal problem occurred

findClass

Class<?> findClass(String name)
            throws ClassNotFoundException

Finds the class with the specified binary name.

Parameters:
name - the binary name of the class
Returns:
the Class Object
Throws:
ClassNotFoundException - if the class could not be found

© 1993, 2020, 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/11/docs/api/jdk.jshell/jdk/jshell/execution/LoaderDelegate.html