package test; import java.lang.reflect.InvocationTargetException; public interface InRAMCompiler { /** * Delete a class from the RAM storage, and destroy its ClassLoader, to * allow it to be unloaded (and later replaced). * @param className - the class to be unloaded. pkgName (as given to the constructor) is added to the name. */ public void deleteClass(String className); public void compile(String name, String srcStr) throws ClassNotFoundException, IllegalArgumentException, SecurityException, IllegalAccessException, InvocationTargetException, NoSuchMethodException; /** * Load className.class out of cache * @param className * @return the class object * @throws ClassNotFoundException */ public Class<?> load(String className) throws ClassNotFoundException; }