Package org.h2.util
Class SourceCompiler.ClassFileManager
- java.lang.Object
-
- javax.tools.ForwardingJavaFileManager<javax.tools.StandardJavaFileManager>
-
- org.h2.util.SourceCompiler.ClassFileManager
-
- All Implemented Interfaces:
java.io.Closeable
,java.io.Flushable
,java.lang.AutoCloseable
,javax.tools.JavaFileManager
,javax.tools.OptionChecker
- Enclosing class:
- SourceCompiler
static class SourceCompiler.ClassFileManager extends javax.tools.ForwardingJavaFileManager<javax.tools.StandardJavaFileManager>
An in-memory class file manager.
-
-
Field Summary
Fields Modifier and Type Field Description private java.security.SecureClassLoader
classLoader
(package private) java.util.Map<java.lang.String,SourceCompiler.JavaClassObject>
classObjectsByName
We use map because there can be nested, anonymous etc classes.
-
Constructor Summary
Constructors Constructor Description ClassFileManager(javax.tools.StandardJavaFileManager standardManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.ClassLoader
getClassLoader(javax.tools.JavaFileManager.Location location)
javax.tools.JavaFileObject
getJavaFileForOutput(javax.tools.JavaFileManager.Location location, java.lang.String className, javax.tools.JavaFileObject.Kind kind, javax.tools.FileObject sibling)
-
Methods inherited from class javax.tools.ForwardingJavaFileManager
close, contains, flush, getFileForInput, getFileForOutput, getJavaFileForInput, getLocationForModule, getLocationForModule, getServiceLoader, handleOption, hasLocation, inferBinaryName, inferModuleName, isSameFile, isSupportedOption, list, listLocationsForModules
-
-
-
-
Field Detail
-
classObjectsByName
java.util.Map<java.lang.String,SourceCompiler.JavaClassObject> classObjectsByName
We use map because there can be nested, anonymous etc classes.
-
classLoader
private java.security.SecureClassLoader classLoader
-
-
Method Detail
-
getClassLoader
public java.lang.ClassLoader getClassLoader(javax.tools.JavaFileManager.Location location)
- Specified by:
getClassLoader
in interfacejavax.tools.JavaFileManager
- Overrides:
getClassLoader
in classjavax.tools.ForwardingJavaFileManager<javax.tools.StandardJavaFileManager>
-
getJavaFileForOutput
public javax.tools.JavaFileObject getJavaFileForOutput(javax.tools.JavaFileManager.Location location, java.lang.String className, javax.tools.JavaFileObject.Kind kind, javax.tools.FileObject sibling) throws java.io.IOException
- Specified by:
getJavaFileForOutput
in interfacejavax.tools.JavaFileManager
- Overrides:
getJavaFileForOutput
in classjavax.tools.ForwardingJavaFileManager<javax.tools.StandardJavaFileManager>
- Throws:
java.io.IOException
-
-