org.apache.beehive.controls.runtime.generator
Class AptControlImplementation

Object
  extended by AptType
      extended by AptControlImplementation
All Implemented Interfaces:
Generator

public class AptControlImplementation
extends AptType
implements Generator

The AptControlImplementation class provides validation and metadata management when processing a ControlImplementation class.


Constructor Summary
AptControlImplementation(Declaration decl, AnnotationProcessorEnvironment env)
          Constructs a new AptControlImplementation instance where information is derived from APT metadata
 
Method Summary
 List<GeneratorOutput> getCheckOutput(Filer filer)
          Returns the information necessary to generate a ImplInitializer from this ControlImplementation.
 ArrayList<AptClientField> getClients()
          Returns the list of ClientFields declared directly by this ControlImplementation
 ArrayList<AptContextField> getContexts()
          Returns the list of ContextFields declared directly by this ControlImplementation
 AptEventField getControlField(String name)
           
 AptControlInterface getControlInterface()
          Returns the ControlInterface implemented by this ControlImpl.
 AptField getField(String name)
          Returns the field with the specified name
 String[] getGeneratedTypes()
          Returns the list of fully qualified class names for types that are derived from this Generator
 List<GeneratorOutput> getGenerateOutput(Filer filer)
          Returns the list of generated files derived from this Generator during the generate phase of annotation processing.
 AptControlImplementation getSuperClass()
          Returns the super interface for this interface
 VersionSupported getVersionSupported()
          Returns the VersionSupported annotation, if any.
 boolean hasClients()
          Returns true if the implemenation class contains any nested event proxies
 boolean hasContexts()
          Returns true if the implemenation class contains any nested services
 boolean hasControls()
          Returns true if the implemenation class contains any nested controls
protected  ArrayList<AptClientField> initClients()
          Initializes the list of ClientFields declared directly by this ControlImpl
protected  void initEventAdaptors()
          Initializes the list of EventAdaptors for this ControlImpl
 
Methods inherited from class AptType
getClassName, getFormalClassName, getFormalShortName, getFormalTypeParameterNames, getFormalTypeParameters, getPackage, getShortName, getTypeDeclaration, setDeclaration
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AptControlImplementation

public AptControlImplementation(Declaration decl,
                                AnnotationProcessorEnvironment env)
Constructs a new AptControlImplementation instance where information is derived from APT metadata

Parameters:
decl - the annotated declaration
Method Detail

getSuperClass

public AptControlImplementation getSuperClass()
Returns the super interface for this interface


getContexts

public ArrayList<AptContextField> getContexts()
Returns the list of ContextFields declared directly by this ControlImplementation


hasContexts

public boolean hasContexts()
Returns true if the implemenation class contains any nested services


hasControls

public boolean hasControls()
Returns true if the implemenation class contains any nested controls


initClients

protected ArrayList<AptClientField> initClients()
Initializes the list of ClientFields declared directly by this ControlImpl


getClients

public ArrayList<AptClientField> getClients()
Returns the list of ClientFields declared directly by this ControlImplementation


getVersionSupported

public VersionSupported getVersionSupported()
Returns the VersionSupported annotation, if any.


hasClients

public boolean hasClients()
Returns true if the implemenation class contains any nested event proxies


getField

public AptField getField(String name)
Returns the field with the specified name


getControlField

public AptEventField getControlField(String name)

getGeneratedTypes

public String[] getGeneratedTypes()
Returns the list of fully qualified class names for types that are derived from this Generator

Specified by:
getGeneratedTypes in interface Generator

getCheckOutput

public List<GeneratorOutput> getCheckOutput(Filer filer)
                                     throws IOException
Returns the information necessary to generate a ImplInitializer from this ControlImplementation.

Specified by:
getCheckOutput in interface Generator
Throws:
IOException

getGenerateOutput

public List<GeneratorOutput> getGenerateOutput(Filer filer)
                                        throws IOException
Returns the list of generated files derived from this Generator during the generate phase of annotation processing.

Specified by:
getGenerateOutput in interface Generator
Throws:
IOException

getControlInterface

public AptControlInterface getControlInterface()
Returns the ControlInterface implemented by this ControlImpl.


initEventAdaptors

protected void initEventAdaptors()
Initializes the list of EventAdaptors for this ControlImpl