Package ch.obermuhlner.scriptengine.java
Class MemoryFileManager
java.lang.Object
javax.tools.ForwardingJavaFileManager<JavaFileManager>
ch.obermuhlner.scriptengine.java.MemoryFileManager
- All Implemented Interfaces:
Closeable,Flushable,AutoCloseable,JavaFileManager,OptionChecker
A
JavaFileManager that manages some files in memory,
delegating the other files to the parent JavaFileManager.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static class(package private) static class(package private) static classNested classes/interfaces inherited from interface javax.tools.JavaFileManager
JavaFileManager.Location -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<String, MemoryFileManager.ClassMemoryJavaFileObject> private final ClassLoaderFields inherited from class javax.tools.ForwardingJavaFileManager
fileManager -
Constructor Summary
ConstructorsConstructorDescriptionMemoryFileManager(JavaFileManager fileManager, ClassLoader parentClassLoader) Creates a MemoryJavaFileManager. -
Method Summary
Modifier and TypeMethodDescriptioncreateSourceFileObject(Object origin, String name, String code) getClassLoader(JavaFileManager.Location location) getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling) inferBinaryName(JavaFileManager.Location location, JavaFileObject file) list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse) Methods inherited from class javax.tools.ForwardingJavaFileManager
close, contains, flush, getFileForInput, getFileForOutput, getFileForOutputForOriginatingFiles, getJavaFileForInput, getJavaFileForOutputForOriginatingFiles, getLocationForModule, getLocationForModule, getServiceLoader, handleOption, hasLocation, inferModuleName, isSameFile, isSupportedOption, listLocationsForModules
-
Field Details
-
mapNameToClasses
-
parentClassLoader
-
-
Constructor Details
-
MemoryFileManager
Creates a MemoryJavaFileManager.- Parameters:
fileManager- theJavaFileManagerparentClassLoader- the parentClassLoader
-
-
Method Details
-
memoryClasses
-
createSourceFileObject
-
getClassLoader
- Specified by:
getClassLoaderin interfaceJavaFileManager- Overrides:
getClassLoaderin classForwardingJavaFileManager<JavaFileManager>
-
list
public Iterable<JavaFileObject> list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse) throws IOException - Specified by:
listin interfaceJavaFileManager- Overrides:
listin classForwardingJavaFileManager<JavaFileManager>- Throws:
IOException
-
inferBinaryName
- Specified by:
inferBinaryNamein interfaceJavaFileManager- Overrides:
inferBinaryNamein classForwardingJavaFileManager<JavaFileManager>
-
getJavaFileForOutput
public JavaFileObject getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling) throws IOException - Specified by:
getJavaFileForOutputin interfaceJavaFileManager- Overrides:
getJavaFileForOutputin classForwardingJavaFileManager<JavaFileManager>- Throws:
IOException
-