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