Interface JavaFileObject

All Superinterfaces:
FileObject
All Known Implementing Classes:
ForwardingJavaFileObject, SimpleJavaFileObject
public interface JavaFileObject
extends FileObject

File abstraction for tools operating on Java™ programming language source and class files.

All methods in this interface might throw a SecurityException if a security exception occurs.

Unless explicitly allowed, all methods in this interface might throw a NullPointerException if given a null argument.

Since:
1.6
See Also:
JavaFileManager

Nested Class Summary

Nested Classes
Modifier and Type Interface Description
static class  JavaFileObject.Kind

Kinds of JavaFileObjects.

Method Summary

All Methods Instance Methods Abstract Methods
Modifier and Type Method Description
Modifier getAccessLevel()

Provides a hint about the access level of the class represented by this file object.

JavaFileObject.Kind getKind()

Returns the kind of this file object.

NestingKind getNestingKind()

Provides a hint about the nesting level of the class represented by this file object.

boolean isNameCompatible​(String simpleName, JavaFileObject.Kind kind)

Checks if this file object is compatible with the specified simple name and kind.

Methods declared in interface javax.tools.FileObject

delete, getCharContent, getLastModified, getName, openInputStream, openOutputStream, openReader, openWriter, toUri

Method Detail

getKind

JavaFileObject.Kind getKind()

Returns the kind of this file object.

Returns:
the kind

isNameCompatible

boolean isNameCompatible​(String simpleName,
                         JavaFileObject.Kind kind)

Checks if this file object is compatible with the specified simple name and kind. A simple name is a single identifier (not qualified) as defined in The Java™ Language Specification, section 6.2 "Names and Identifiers".

Parameters:
simpleName - a simple name of a class
kind - a kind
Returns:
true if this file object is compatible; false otherwise

getNestingKind

NestingKind getNestingKind()

Provides a hint about the nesting level of the class represented by this file object. This method may return NestingKind.MEMBER to mean NestingKind.LOCAL or NestingKind.ANONYMOUS. If the nesting level is not known or this file object does not represent a class file this method returns null.

Returns:
the nesting kind, or null if the nesting kind is not known

getAccessLevel

Modifier getAccessLevel()

Provides a hint about the access level of the class represented by this file object. If the access level is not known or if this file object does not represent a class file this method returns null.

Returns:
the access level