net.sf.daileon.notsupported
Class AnnotationsStrategy

java.lang.Object
  extended by net.sf.daileon.notsupported.AnnotationsStrategy
All Implemented Interfaces:
Strategy

public class AnnotationsStrategy
extends Object
implements Strategy

The AnnotationsStrategy class assumes that the annotations that correspond to domain annotations are organized in class elements, indicated in template annotations that annotate the domain annotations.

Version:
1.0 01/01/2010
Author:
Roberto Perillo

Field Summary
private  org.objectweb.asm.attrs.Annotation annotation
          The domain annotation to be evaluated
private  AbstractAnnotationsReplacer annotationsReplacer
          The AbstractAnnotationsReplacer object, that organizes the elements and their annotations, as well as their domain annotations
private  ElementRoot element
          The element annotated with the domain annotation
private  String path
          The physical path to the domain annotation
 
Constructor Summary
AnnotationsStrategy()
          Default class constructor.
 
Method Summary
 void execute()
          Triggers the process of evaluating a domain annotation.
 void setAnnotation(org.objectweb.asm.attrs.Annotation annotation)
          Sets the domain annotation.
 void setAnnotationsReplacer(AbstractAnnotationsReplacer replacer)
          Sets the AbstractAnnotationsReplacer object.
 void setElement(ElementRoot element)
          Sets the element that contains the domain annotation.
 void setPath(String path)
          Sets the path of the domain annotation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

annotationsReplacer

private AbstractAnnotationsReplacer annotationsReplacer
The AbstractAnnotationsReplacer object, that organizes the elements and their annotations, as well as their domain annotations


annotation

private org.objectweb.asm.attrs.Annotation annotation
The domain annotation to be evaluated


path

private String path
The physical path to the domain annotation


element

private ElementRoot element
The element annotated with the domain annotation

Constructor Detail

AnnotationsStrategy

public AnnotationsStrategy()
Default class constructor.

Method Detail

setAnnotationsReplacer

public void setAnnotationsReplacer(AbstractAnnotationsReplacer replacer)
Sets the AbstractAnnotationsReplacer object. This object is responsible for keeping the elements and their corresponding annotations, as well as their domain annotations.

Specified by:
setAnnotationsReplacer in interface Strategy
Parameters:
replacer - The object that organizes elements and annotations.

setAnnotation

public void setAnnotation(org.objectweb.asm.attrs.Annotation annotation)
Sets the domain annotation.

Specified by:
setAnnotation in interface Strategy
Parameters:
annotation - The domain annotation.

setPath

public void setPath(String path)
Sets the path of the domain annotation.

Specified by:
setPath in interface Strategy
Parameters:
path - The path of the domain annotation.

setElement

public void setElement(ElementRoot element)
Sets the element that contains the domain annotation.

Specified by:
setElement in interface Strategy
Parameters:
element - The element that contains the domain annotation. This element can be a class, a field or a method.

execute

public void execute()
Triggers the process of evaluating a domain annotation. Essentially, this method organizes the elements and their corresponding annotations, as well as their domain annotations.

Specified by:
execute in interface Strategy