org.apache.felix.ipojo.manipulation
Class ClassChecker.ArrayAttribute

java.lang.Object
  extended by org.apache.felix.ipojo.manipulation.ClassChecker.ArrayAttribute
All Implemented Interfaces:
org.objectweb.asm.AnnotationVisitor
Enclosing class:
ClassChecker

public class ClassChecker.ArrayAttribute
extends Object
implements org.objectweb.asm.AnnotationVisitor

Describes an array attribute. This class is able to visit an annotation array attribute, and to recreate this array on another annotation.

Author:
Felix Project Team

Constructor Summary
ClassChecker.ArrayAttribute(String name)
          Creates an array attribute.
 
Method Summary
 void visit(org.objectweb.asm.AnnotationVisitor av)
          Recreates the visited array attribute.
 void visit(String arg0, Object arg1)
          Visits the content of the array.
 org.objectweb.asm.AnnotationVisitor visitAnnotation(String arg0, String arg1)
          Visits the content of the array.
 org.objectweb.asm.AnnotationVisitor visitArray(String arg0)
          Visits the content of the array.
 void visitEnd()
          End of the array attribute visit.
 void visitEnum(String arg0, String arg1, String arg2)
          Visits the content of the array.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassChecker.ArrayAttribute

public ClassChecker.ArrayAttribute(String name)
Creates an array attribute.

Parameters:
name - the name of the attribute.
Method Detail

visit

public void visit(String arg0,
                  Object arg1)
Visits the content of the array. This method is called for simple values.

Specified by:
visit in interface org.objectweb.asm.AnnotationVisitor
Parameters:
arg0 - null
arg1 - the value
See Also:
AnnotationVisitor.visit(java.lang.String, java.lang.Object)

visitAnnotation

public org.objectweb.asm.AnnotationVisitor visitAnnotation(String arg0,
                                                           String arg1)
Visits the content of the array. This method is called for nested annotations (annotations contained in the array).

Specified by:
visitAnnotation in interface org.objectweb.asm.AnnotationVisitor
Parameters:
arg0 - null
arg1 - the annotation descriptor
Returns:
an ClassChecker.AnnotationDescriptor which creates a copy of the contained annotation.
See Also:
AnnotationVisitor.visitAnnotation(String, String)

visitArray

public org.objectweb.asm.AnnotationVisitor visitArray(String arg0)
Visits the content of the array. This method is called for nested arrays (arrays contained in the array).

Specified by:
visitArray in interface org.objectweb.asm.AnnotationVisitor
Parameters:
arg0 - null
Returns:
an ArrayDescriptor which creates a copy of the contained array.
See Also:
AnnotationVisitor.visitArray(String)

visitEnd

public void visitEnd()
End of the array attribute visit.

Specified by:
visitEnd in interface org.objectweb.asm.AnnotationVisitor
See Also:
AnnotationVisitor.visitEnd()

visitEnum

public void visitEnum(String arg0,
                      String arg1,
                      String arg2)
Visits the content of the array. This method is called for enumeration values.

Specified by:
visitEnum in interface org.objectweb.asm.AnnotationVisitor
Parameters:
arg0 - null
arg1 - the enumeration descriptor
arg2 - the value
See Also:
AnnotationVisitor.visitEnum(String, String, String)

visit

public void visit(org.objectweb.asm.AnnotationVisitor av)
Recreates the visited array attribute. This method handle the generation of the object embedded in the array.

Parameters:
av - the annotation visitor on which the array attribute needs to be injected.


Copyright © 2013 The Apache Software Foundation. All Rights Reserved.