|
Java™ Platform Standard Ed. 6 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface StandardJavaFileManager
File manager based on java.io.File. A common way to obtain an instance of this class is using getStandardFileManager, for example:
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();This file manager creates file objects representing regular files, zip file entries, or entries in similar file system based containers. Any file object returned from a file manager implementing this interface must observe the following behavior:DiagnosticCollector<JavaFileObject>
diagnostics = newDiagnosticCollector<JavaFileObject>()
; StandardJavaFileManager fm = compiler.getStandardFileManager(diagnostics, null, null);
FileObject.delete()
is equivalent to File.delete()
,
FileObject.getLastModified()
is equivalent to File.lastModified()
,
FileObject.getCharContent(boolean)
,
FileObject.openInputStream()
, and
FileObject.openReader(boolean)
must succeed if the following would succeed (ignoring
encoding issues):
new FileInputStream(new File(fileObject.toUri()))
FileObject.openOutputStream()
, and
FileObject.openWriter()
must
succeed if the following would succeed (ignoring encoding
issues):
new FileOutputStream(new File(fileObject.toUri()))
FileObject.toUri()
file:///C:/Documents%20and%20Settings/UncleBob/BobsApp/Test.java
jar:///C:/Documents%20and%20Settings/UncleBob/lib/vendorA.jar!com/vendora/LibraryClass.class
file:BobsApp/Test.java
(the file name is relative
and depend on the current directory)
jar:lib/vendorA.jar!com/vendora/LibraryClass.class
(the first half of the path depends on the current directory,
whereas the component after ! is legal)
Test.java
(this URI depends on the current
directory and does not have a schema)
jar:///C:/Documents%20and%20Settings/UncleBob/BobsApp/../lib/vendorA.jar!com/vendora/LibraryClass.class
(the path is not normalized)
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface javax.tools.JavaFileManager |
---|
JavaFileManager.Location |
Method Summary | |
---|---|
Iterable<? extends JavaFileObject> |
getJavaFileObjects(File... files)
Gets file objects representing the given files. |
Iterable<? extends JavaFileObject> |
getJavaFileObjects(String... names)
Gets file objects representing the given file names. |
Iterable<? extends JavaFileObject> |
getJavaFileObjectsFromFiles(Iterable<? extends File> files)
Gets file objects representing the given files. |
Iterable<? extends JavaFileObject> |
getJavaFileObjectsFromStrings(Iterable<String> names)
Gets file objects representing the given file names. |
Iterable<? extends File> |
getLocation(JavaFileManager.Location location)
Gets the path associated with the given location. |
boolean |
isSameFile(FileObject a,
FileObject b)
Compares two file objects and return true if they represent the same canonical file, zip file entry, or entry in any file system based container. |
void |
setLocation(JavaFileManager.Location location,
Iterable<? extends File> path)
Associates the given path with the given location. |
Methods inherited from interface javax.tools.JavaFileManager |
---|
close, flush, getClassLoader, getFileForInput, getFileForOutput, getJavaFileForInput, getJavaFileForOutput, handleOption, hasLocation, inferBinaryName, list |
Methods inherited from interface javax.tools.OptionChecker |
---|
isSupportedOption |
Method Detail |
---|
boolean isSameFile(FileObject a, FileObject b)
isSameFile
in interface JavaFileManager
a
- a file objectb
- a file object
IllegalArgumentException
- if either of the arguments
were created with another file manager implementationIterable<? extends JavaFileObject> getJavaFileObjectsFromFiles(Iterable<? extends File> files)
files
- a list of files
IllegalArgumentException
- if the list of files includes
a directoryIterable<? extends JavaFileObject> getJavaFileObjects(File... files)
getJavaFileObjectsFromFiles(Arrays.asList(files))
files
- an array of files
IllegalArgumentException
- if the array of files includes
a directory
NullPointerException
- if the given array contains null
elementsIterable<? extends JavaFileObject> getJavaFileObjectsFromStrings(Iterable<String> names)
names
- a list of file names
IllegalArgumentException
- if the list of file names
includes a directoryIterable<? extends JavaFileObject> getJavaFileObjects(String... names)
getJavaFileObjectsFromStrings(Arrays.asList(names))
names
- a list of file names
IllegalArgumentException
- if the array of file names
includes a directory
NullPointerException
- if the given array contains null
elementsvoid setLocation(JavaFileManager.Location location, Iterable<? extends File> path) throws IOException
location
- a locationpath
- a list of files, if null
use the default
path for this location
IllegalArgumentException
- if location is an output
location and path does not contain exactly one element
IOException
- if location is an output location and path
does not represent an existing directorygetLocation(javax.tools.JavaFileManager.Location)
Iterable<? extends File> getLocation(JavaFileManager.Location location)
location
- a location
null
if this location has no
associated pathsetLocation(javax.tools.JavaFileManager.Location, java.lang.Iterable extends java.io.File>)
|
Java™ Platform Standard Ed. 6 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.