Package net.openhft.compiler
Class MyJavaFileManager
java.lang.Object
net.openhft.compiler.MyJavaFileManager
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
,JavaFileManager
,OptionChecker
-
Nested Class Summary
Nested classes/interfaces inherited from interface javax.tools.JavaFileManager
JavaFileManager.Location
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map
<String, CloseableByteArrayOutputStream> private final StandardJavaFileManager
private static final org.slf4j.Logger
private static final long
private static final sun.misc.Unsafe
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
close()
void
flush()
getClassLoader
(JavaFileManager.Location location) getFileForInput
(JavaFileManager.Location location, String packageName, String relativeName) getFileForOutput
(JavaFileManager.Location location, String packageName, String relativeName, FileObject sibling) getJavaFileForInput
(JavaFileManager.Location location, String className, JavaFileObject.Kind kind) @NotNull JavaFileObject
getJavaFileForOutput
(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling) boolean
handleOption
(String current, Iterator<String> remaining) boolean
hasLocation
(JavaFileManager.Location location) inferBinaryName
(JavaFileManager.Location location, JavaFileObject file) inferModuleName
(JavaFileManager.Location location) private <T> T
invokeNamedMethodIfAvailable
(JavaFileManager.Location location, String name) boolean
isSameFile
(FileObject a, FileObject b) int
isSupportedOption
(String option) list
(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface javax.tools.JavaFileManager
contains, getLocationForModule, getLocationForModule, getServiceLoader
-
Field Details
-
LOG
private static final org.slf4j.Logger LOG -
unsafe
private static final sun.misc.Unsafe unsafe -
OVERRIDE_OFFSET
private static final long OVERRIDE_OFFSET -
fileManager
-
buffers
-
-
Constructor Details
-
MyJavaFileManager
MyJavaFileManager(StandardJavaFileManager fileManager)
-
-
Method Details
-
listLocationsForModules
public Iterable<Set<JavaFileManager.Location>> listLocationsForModules(JavaFileManager.Location location) - Specified by:
listLocationsForModules
in interfaceJavaFileManager
-
inferModuleName
- Specified by:
inferModuleName
in interfaceJavaFileManager
-
getClassLoader
- Specified by:
getClassLoader
in interfaceJavaFileManager
-
list
public Iterable<JavaFileObject> list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse) throws IOException - Specified by:
list
in interfaceJavaFileManager
- Throws:
IOException
-
inferBinaryName
- Specified by:
inferBinaryName
in interfaceJavaFileManager
-
isSameFile
- Specified by:
isSameFile
in interfaceJavaFileManager
-
handleOption
- Specified by:
handleOption
in interfaceJavaFileManager
-
hasLocation
- Specified by:
hasLocation
in interfaceJavaFileManager
-
getJavaFileForInput
public JavaFileObject getJavaFileForInput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind) throws IOException - Specified by:
getJavaFileForInput
in interfaceJavaFileManager
- Throws:
IOException
-
getJavaFileForOutput
@NotNull public @NotNull JavaFileObject getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling) - Specified by:
getJavaFileForOutput
in interfaceJavaFileManager
-
getFileForInput
public FileObject getFileForInput(JavaFileManager.Location location, String packageName, String relativeName) throws IOException - Specified by:
getFileForInput
in interfaceJavaFileManager
- Throws:
IOException
-
getFileForOutput
public FileObject getFileForOutput(JavaFileManager.Location location, String packageName, String relativeName, FileObject sibling) throws IOException - Specified by:
getFileForOutput
in interfaceJavaFileManager
- Throws:
IOException
-
flush
public void flush()- Specified by:
flush
in interfaceFlushable
- Specified by:
flush
in interfaceJavaFileManager
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceJavaFileManager
- Throws:
IOException
-
isSupportedOption
- Specified by:
isSupportedOption
in interfaceOptionChecker
-
clearBuffers
public void clearBuffers() -
getAllBuffers
-
invokeNamedMethodIfAvailable
-