org.apache.tapestry5.internal.plastic
Class AbstractAnnotationBuilder

java.lang.Object
  extended by org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor
      extended by org.apache.tapestry5.internal.plastic.AbstractAnnotationBuilder
Direct Known Subclasses:
AnnotationBuilder

public abstract class AbstractAnnotationBuilder
extends org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor


Field Summary
protected  PlasticClassPool pool
           
 
Fields inherited from class org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor
api, av
 
Constructor Summary
AbstractAnnotationBuilder(PlasticClassPool pool)
           
 
Method Summary
protected  Class elementTypeForArrayAttribute(String name)
           
protected abstract  void store(String name, Object value)
           
 void visit(String name, Object value)
           
 org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor visitAnnotation(String name, String desc)
           
 org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor visitArray(String name)
          Because of how ASM works, this should only be invoked when the array values are not primitives and not Class/Type; i.e.
 void visitEnd()
           
 void visitEnum(String name, String desc, String value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

pool

protected final PlasticClassPool pool
Constructor Detail

AbstractAnnotationBuilder

public AbstractAnnotationBuilder(PlasticClassPool pool)
Method Detail

store

protected abstract void store(String name,
                              Object value)

elementTypeForArrayAttribute

protected Class elementTypeForArrayAttribute(String name)

visit

public void visit(String name,
                  Object value)
Overrides:
visit in class org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor

visitEnum

public void visitEnum(String name,
                      String desc,
                      String value)
Overrides:
visitEnum in class org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor

visitAnnotation

public org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor visitAnnotation(String name,
                                                                                   String desc)
Overrides:
visitAnnotation in class org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor

visitArray

public org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor visitArray(String name)
Because of how ASM works, this should only be invoked when the array values are not primitives and not Class/Type; i.e. the inner values will be either Class/Type, enum, or nested annotations. All the arrays of strings and primitives are handled by ASM and become a single call to visit(String, Object).

Overrides:
visitArray in class org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor

visitEnd

public void visitEnd()
Overrides:
visitEnd in class org.apache.tapestry5.internal.plastic.asm.AnnotationVisitor


Copyright © 2003-2012 The Apache Software Foundation.