Module jdk.jshell
Package jdk.jshell.execution

# Interface LoaderDelegate

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

Since:
  9

## Method Summary

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.

## Method Details

### 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