Class FileInputJavaFileManager
- java.lang.Object
-
- javax.tools.ForwardingJavaFileManager<javax.tools.JavaFileManager>
-
- org.codehaus.commons.compiler.jdk.FileInputJavaFileManager
-
- All Implemented Interfaces:
java.io.Closeable
,java.io.Flushable
,java.lang.AutoCloseable
,javax.tools.JavaFileManager
,javax.tools.OptionChecker
final class FileInputJavaFileManager extends javax.tools.ForwardingJavaFileManager<javax.tools.JavaFileManager>
AForwardingJavaFileManager
that maps accesses to a particularJavaFileManager.Location
andJavaFileObject.Kind
to a path-based search in the file system.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
FileInputJavaFileManager.InputFileJavaFileObject
AJavaFileObject
that reads from aFile
.
-
Field Summary
Fields Modifier and Type Field Description private javax.tools.JavaFileObject.Kind
kind
private javax.tools.JavaFileManager.Location
location
private java.lang.String
optionalCharacterEncoding
private java.io.File[]
path
-
Constructor Summary
Constructors Constructor Description FileInputJavaFileManager(javax.tools.JavaFileManager delegate, javax.tools.JavaFileManager.Location location, javax.tools.JavaFileObject.Kind kind, java.io.File[] path, java.lang.String optionalCharacterEncoding)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.tools.JavaFileObject
getJavaFileForInput(javax.tools.JavaFileManager.Location location, java.lang.String className, javax.tools.JavaFileObject.Kind kind)
boolean
hasLocation(javax.tools.JavaFileManager.Location location)
java.lang.String
inferBinaryName(javax.tools.JavaFileManager.Location location, javax.tools.JavaFileObject file)
private java.util.Collection<javax.tools.JavaFileObject>
list(java.io.File directory, java.lang.String qualification, javax.tools.JavaFileObject.Kind kind, boolean recurse)
java.lang.Iterable<javax.tools.JavaFileObject>
list(javax.tools.JavaFileManager.Location location, java.lang.String packageName, java.util.Set<javax.tools.JavaFileObject.Kind> kinds, boolean recurse)
-
Methods inherited from class javax.tools.ForwardingJavaFileManager
close, contains, flush, getClassLoader, getFileForInput, getFileForOutput, getJavaFileForOutput, getLocationForModule, getLocationForModule, getServiceLoader, handleOption, inferModuleName, isSameFile, isSupportedOption, listLocationsForModules
-
-
-
-
Constructor Detail
-
FileInputJavaFileManager
FileInputJavaFileManager(javax.tools.JavaFileManager delegate, javax.tools.JavaFileManager.Location location, javax.tools.JavaFileObject.Kind kind, java.io.File[] path, java.lang.String optionalCharacterEncoding)
- Parameters:
path
- List of directories to look throughoptionalCharacterEncoding
- Encoding of the files being read
-
-
Method Detail
-
list
public java.lang.Iterable<javax.tools.JavaFileObject> list(javax.tools.JavaFileManager.Location location, java.lang.String packageName, java.util.Set<javax.tools.JavaFileObject.Kind> kinds, boolean recurse) throws java.io.IOException
- Specified by:
list
in interfacejavax.tools.JavaFileManager
- Overrides:
list
in classjavax.tools.ForwardingJavaFileManager<javax.tools.JavaFileManager>
- Throws:
java.io.IOException
-
list
private java.util.Collection<javax.tools.JavaFileObject> list(java.io.File directory, java.lang.String qualification, javax.tools.JavaFileObject.Kind kind, boolean recurse) throws java.io.IOException
- Parameters:
qualification
- E.g. "", or "pkg1.pkg2."- Returns:
- All
JavaFileObject
s of the givenkind
in the givendirectory
- Throws:
java.io.IOException
-
inferBinaryName
public java.lang.String inferBinaryName(javax.tools.JavaFileManager.Location location, javax.tools.JavaFileObject file)
- Specified by:
inferBinaryName
in interfacejavax.tools.JavaFileManager
- Overrides:
inferBinaryName
in classjavax.tools.ForwardingJavaFileManager<javax.tools.JavaFileManager>
-
hasLocation
public boolean hasLocation(javax.tools.JavaFileManager.Location location)
- Specified by:
hasLocation
in interfacejavax.tools.JavaFileManager
- Overrides:
hasLocation
in classjavax.tools.ForwardingJavaFileManager<javax.tools.JavaFileManager>
-
getJavaFileForInput
public javax.tools.JavaFileObject getJavaFileForInput(javax.tools.JavaFileManager.Location location, java.lang.String className, javax.tools.JavaFileObject.Kind kind) throws java.io.IOException
- Specified by:
getJavaFileForInput
in interfacejavax.tools.JavaFileManager
- Overrides:
getJavaFileForInput
in classjavax.tools.ForwardingJavaFileManager<javax.tools.JavaFileManager>
- Throws:
java.io.IOException
-
-