org.apache.beehive.controls.runtime.generator.apt
Class ControlMemberTypeAnnotationProcessor

Object
  extended by Diagnostics
      extended by TwoPhaseAnnotationProcessor
          extended by ControlMemberTypeAnnotationProcessor
All Implemented Interfaces:
AnnotationProcessor

public class ControlMemberTypeAnnotationProcessor
extends TwoPhaseAnnotationProcessor


Constructor Summary
ControlMemberTypeAnnotationProcessor(Set<AnnotationTypeDeclaration> atds, AnnotationProcessorEnvironment env)
           
 
Method Summary
 void check()
          Performs semantic validation of input Declarations that are annotated with annotations claimed by this AnnotationProcessor.
 void check(Declaration decl)
          The check method is responsible for all semantic validation of the input Declaration.
 void checkDate(Declaration decl)
           
 void generate(Declaration decl)
          The generate method is responsible for the generation of any additional artifacts (source, class, or binary) that are derived from the input Declaration.
 
Methods inherited from class TwoPhaseAnnotationProcessor
generate, getResourceString, printError, printWarning, process
 
Methods inherited from class Diagnostics
addError, addError, addError, addErrorArrayArgs, addWarning, addWarning, addWarning, getAnnotationProcessorEnvironment, hasErrors, setHasErrors
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ControlMemberTypeAnnotationProcessor

public ControlMemberTypeAnnotationProcessor(Set<AnnotationTypeDeclaration> atds,
                                            AnnotationProcessorEnvironment env)
Parameters:
atds -
env -
Method Detail

check

public void check()
Description copied from class: TwoPhaseAnnotationProcessor
Performs semantic validation of input Declarations that are annotated with annotations claimed by this AnnotationProcessor.

Overrides:
check in class TwoPhaseAnnotationProcessor

check

public void check(Declaration decl)
Description copied from class: TwoPhaseAnnotationProcessor
The check method is responsible for all semantic validation of the input Declaration.

All semantic errors/warnings associated with the input Declaration should be output during check via the TwoPhaseAnnotationProcessor.printError(com.sun.mirror.declaration.Declaration, java.lang.String, java.lang.Object...) and TwoPhaseAnnotationProcessor.printWarning(com.sun.mirror.declaration.Declaration, java.lang.String, java.lang.Object...) methods. If an implementation bypasses printError, it must override Diagnostics.hasErrors() to ensure correct behaviour.

If the presence of the input Declaration implies the need to add new files, and those files need to be visible during the check phase for other Declarations, then the AnnotationProcessorEnvironment's Filer API should be used to add those files in this phase. The adding of such files at this point should typically not result in their emission to persistent storage (i.e. disk), but rather be kept in memory to be referenced by the check phase of other Declarations.

Specified by:
check in class TwoPhaseAnnotationProcessor

generate

public void generate(Declaration decl)
Description copied from class: TwoPhaseAnnotationProcessor
The generate method is responsible for the generation of any additional artifacts (source, class, or binary) that are derived from the input Declaration.

Specified by:
generate in class TwoPhaseAnnotationProcessor

checkDate

public void checkDate(Declaration decl)