Mirror API

com.sun.mirror.apt
Interface AnnotationProcessorEnvironment


public interface AnnotationProcessorEnvironment

The environment encapsulating the state needed by an annotation processor. An annotation processing tool makes this environment available to all annotation processors.

When an annotation processing tool is invoked, it is given a set of type declarations on which to operate. These are refered to as the specified types. The type declarations said to be included in this invocation consist of the specified types and any types nested within them.

DeclarationFilter provides a simple way to select just the items of interest when a method returns a collection of declarations.

Since:
1.5

Method Summary
 void addListener(AnnotationProcessorListener listener)
          Add a listener.
 Collection<Declaration> getDeclarationsAnnotatedWith(AnnotationTypeDeclaration a)
          Returns the declarations annotated with the given annotation type.
 Declarations getDeclarationUtils()
          Returns an implementation of some utility methods for operating on declarations.
 Filer getFiler()
          Returns the filer used to create new source, class, or auxiliary files.
 Messager getMessager()
          Returns the messager used to report errors, warnings, and other notices.
 Map<String,String> getOptions()
          Returns the options passed to the annotation processing tool.
 PackageDeclaration getPackage(String name)
          Returns the declaration of a package given its fully qualified name.
 Collection<TypeDeclaration> getSpecifiedTypeDeclarations()
          Returns the declarations of the types specified when the annotation processing tool was invoked.
 TypeDeclaration getTypeDeclaration(String name)
          Returns the declaration of a type given its fully qualified name.
 Collection<TypeDeclaration> getTypeDeclarations()
          A convenience method that returns the declarations of the types included in this invocation of the annotation processing tool.
 Types getTypeUtils()
          Returns an implementation of some utility methods for operating on types.
 void removeListener(AnnotationProcessorListener listener)
          Remove a listener.
 

Method Detail

getOptions

Map<String,String> getOptions()
Returns the options passed to the annotation processing tool. Options are returned in the form of a map from option name (such as "-encoding") to option value. For an option with no value (such as "-help"), the corresponding value in the map is null.

Options beginning with "-A" are processor-specific. Such options are unrecognized by the tool, but intended to be used by some annotation processor.

Returns:
the options passed to the tool

getMessager

Messager getMessager()
Returns the messager used to report errors, warnings, and other notices.

Returns:
the messager

getFiler

Filer getFiler()
Returns the filer used to create new source, class, or auxiliary files.

Returns:
the filer

getSpecifiedTypeDeclarations

Collection<TypeDeclaration> getSpecifiedTypeDeclarations()
Returns the declarations of the types specified when the annotation processing tool was invoked.

Returns:
the types specified when the tool was invoked, or an empty collection if there were none

getPackage

PackageDeclaration getPackage(String name)
Returns the declaration of a package given its fully qualified name.

Parameters:
name - fully qualified package name, or "" for the unnamed package
Returns:
the declaration of the named package, or null if it cannot be found

getTypeDeclaration

TypeDeclaration getTypeDeclaration(String name)
Returns the declaration of a type given its fully qualified name.

Parameters:
name - fully qualified type name
Returns:
the declaration of the named type, or null if it cannot be found

getTypeDeclarations

Collection<TypeDeclaration> getTypeDeclarations()
A convenience method that returns the declarations of the types included in this invocation of the annotation processing tool.

Returns:
the declarations of the types included in this invocation of the tool, or an empty collection if there are none

getDeclarationsAnnotatedWith

Collection<Declaration> getDeclarationsAnnotatedWith(AnnotationTypeDeclaration a)
Returns the declarations annotated with the given annotation type. Only declarations of the types included in this invocation of the annotation processing tool, or declarations of members, parameters, or type parameters declared within those, are returned.

Parameters:
a - annotation type being requested
Returns:
the declarations annotated with the given annotation type, or an empty collection if there are none

getDeclarationUtils

Declarations getDeclarationUtils()
Returns an implementation of some utility methods for operating on declarations.

Returns:
declaration utilities

getTypeUtils

Types getTypeUtils()
Returns an implementation of some utility methods for operating on types.

Returns:
type utilities

addListener

void addListener(AnnotationProcessorListener listener)
Add a listener. If the listener is currently registered to listen, adding it again will have no effect.

Parameters:
listener - The listener to add.
Throws:
NullPointerException - if the listener is null

removeListener

void removeListener(AnnotationProcessorListener listener)
Remove a listener. If the listener is not currently listening, the method call does nothing.

Parameters:
listener - The listener to remove.
Throws:
NullPointerException - if the listener is null

Mirror API

Report a bug or request a feature.
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms.