Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Mirror API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Mirror API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Report a bug or request a feature.
Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.