org.exolab.javasource
public interface JAnnotatedElement
Adding the class annotations
JClass lollipop = new JClass("Lollipop"); JAnnotationType endorsersType = new JAnnotationType("Endorsers"); JAnnotation endorsers = new JAnnotation(endorsersType); endorsers.setValue(new String[] { "\"Children\"", "\"Unscrupulous dentists\""}); lollipop.addAnnotation(endorsers);outputs
@Endorsers( { "Children", "Unscrupulous dentists" }) public class Lollipop { }Adding the method annotations
JClass timeMachine = new JClass("TimeMachine"); JAnnotationType requestType = new JAnnotationType("RequestForEnhancement"); JAnnotation request = new JAnnotation(requestType); request.setElementValue("id", "2868724"); request.setElementValue("synopsis", "\"Provide time-travel functionality\""); request.setElementValue("engineer", "\"Mr. Peabody\""); request.setElementValue("date", "\"4/1/2004\""); JMethod travelThroughTime = new JMethod(null, "travelThroughTime"); travelThroughTime.addAnnotation(request); travelThroughTime.addParameter(new JParameter(new JClass("Date"), "date")); timeMachine.addMethod(travelThroughTime);outputs
@RequestForEnhancement( id = 2868724, synopsis = "Provide time-travel functionality", engineer = "Mr. Peabody", date = "4/1/2004") public void travelThroughTime(Date date) { }Adding the field annotations
JClass timeMachine = new JClass("EventProducer"); JAnnotationType suppressWarningsType = new JAnnotationType("SuppressWarnings"); JAnnotation suppressWarnings = new JAnnotation(suppressWarningsType); JField field = new JField(new JClass("DocumentHandler"), "documentHandler"); field.addAnnotation(suppressWarnings); timeMachine.addField(field);outputs
@SuppressWarnings() private DocumentHandler documentHandler;
Method Summary | |
---|---|
void | addAnnotation(JAnnotation annotation)
Adds a JAnnotation to this source element. |
JAnnotation | getAnnotation(JAnnotationType annotationType)
Retrieves a JAnnotation for the given JAnnotationType, returns null if no
annotation has been set.
|
JAnnotation[] | getAnnotations()
Returns a list of JAnnotation's already set on this source element.
|
boolean | hasAnnotations()
Returns true if this source element has any annotations.
|
boolean | isAnnotationPresent(JAnnotationType annotationType)
Returns true if a JAnnotation exists for the given JAnnotationType.
|
JAnnotation | removeAnnotation(JAnnotationType annotationType)
Removes the JAnnotation from this source element for the given
JAnnotationType. |
Parameters: annotation a JAnnotation to add to this source element.
Parameters: annotationType Annotation type to retrieve
Returns: A JAnnotation for the given JAnnotationType
Returns: A list of all JAnnotations associated with this source element.
Returns: Returns true if this source element has any annotations.
Parameters: annotationType Annotation type to check for presence or absense
Returns: True if a JAnnotation has been added for the given JAnnotationType.
Parameters: annotationType Annotation type to remove
Returns: The JAnnotation that was associated with this source element