com.sun.tools.apt.comp
Class BootstrapAPF

java.lang.Object
  extended by com.sun.tools.apt.comp.BootstrapAPF
All Implemented Interfaces:
AnnotationProcessorFactory

public class BootstrapAPF
extends java.lang.Object
implements AnnotationProcessorFactory


Field Summary
(package private) static java.util.Collection<java.lang.String> supportedAnnotations
           
(package private) static java.util.Collection<java.lang.String> supportedOptions
           
 
Constructor Summary
BootstrapAPF()
           
 
Method Summary
 AnnotationProcessor getProcessorFor(java.util.Set<AnnotationTypeDeclaration> atds, AnnotationProcessorEnvironment env)
          Returns an annotation processor for a set of annotation types.
 java.util.Collection<java.lang.String> supportedAnnotationTypes()
          Returns the names of the annotation types supported by this factory.
 java.util.Collection<java.lang.String> supportedOptions()
          Returns the options recognized by this factory or by any of the processors it may create.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

supportedOptions

static final java.util.Collection<java.lang.String> supportedOptions

supportedAnnotations

static java.util.Collection<java.lang.String> supportedAnnotations
Constructor Detail

BootstrapAPF

public BootstrapAPF()
Method Detail

supportedOptions

public java.util.Collection<java.lang.String> supportedOptions()
Description copied from interface: AnnotationProcessorFactory
Returns the options recognized by this factory or by any of the processors it may create. Only processor-specific options are included, each of which begins with "-A". For example, if this factory recognizes options such as -Adebug -Aloglevel=3, it will return the strings "-Adebug" and "-Aloglevel".

A tool might use this information to determine if any options provided by a user are unrecognized by any processor, in which case it may wish to report an error.

Specified by:
supportedOptions in interface AnnotationProcessorFactory
Returns:
the options recognized by this factory or by any of the processors it may create, or an empty collection if none

supportedAnnotationTypes

public java.util.Collection<java.lang.String> supportedAnnotationTypes()
Description copied from interface: AnnotationProcessorFactory
Returns the names of the annotation types supported by this factory. An element of the result may be the canonical (fully qualified) name of a supported annotation type. Alternately it may be of the form "name.*" representing the set of all annotation types with canonical names beginning with "name." Finally, "*" by itself represents the set of all annotation types.

Specified by:
supportedAnnotationTypes in interface AnnotationProcessorFactory
Returns:
the names of the annotation types supported by this factory

getProcessorFor

public AnnotationProcessor getProcessorFor(java.util.Set<AnnotationTypeDeclaration> atds,
                                           AnnotationProcessorEnvironment env)
Description copied from interface: AnnotationProcessorFactory
Returns an annotation processor for a set of annotation types. The set will be empty if the factory supports "*" and the specified type declarations have no annotations. Note that the set of annotation types may be empty for other reasons, such as giving the factory an opportunity to register a listener. An AnnotationProcessorFactory must gracefully handle an empty set of annotations; an appropriate response to an empty set will often be returning AnnotationProcessors.NO_OP.

Specified by:
getProcessorFor in interface AnnotationProcessorFactory
Parameters:
atds - type declarations of the annotation types to be processed
env - environment to use during processing
Returns:
an annotation processor for the given annotation types, or null if the types are not supported or the processor cannot be created