Class AnnotationInvocationHandler

  • All Implemented Interfaces:
    java.lang.reflect.InvocationHandler

    class AnnotationInvocationHandler
    extends org.objectweb.asm.AnnotationVisitor
    implements java.lang.reflect.InvocationHandler
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.String className  
      private Multimap<java.lang.String,​java.lang.Object> values  
      • Fields inherited from class org.objectweb.asm.AnnotationVisitor

        api, av
    • Constructor Summary

      Constructors 
      Constructor Description
      AnnotationInvocationHandler​(java.lang.String className, org.objectweb.asm.AnnotationVisitor annotationVisitor)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private AnnotationInvocationHandler asOneOfUs​(java.lang.Object o)  
      private boolean equalsImpl​(java.lang.Object arg)  
      private int hashcodeImpl()  
      java.lang.Object invoke​(java.lang.Object proxy, java.lang.reflect.Method method, java.lang.Object[] args)  
      private java.lang.Object parseEnum​(java.lang.Class<?> type, java.lang.Object res)  
      private java.lang.Object peelSingle​(java.util.Collection<java.lang.Object> vs)  
      private java.lang.String toStringImpl()  
      void visit​(java.lang.String name, java.lang.Object value)  
      org.objectweb.asm.AnnotationVisitor visitArray​(java.lang.String name)  
      void visitEnum​(java.lang.String name, java.lang.String desc, java.lang.String value)  
      • Methods inherited from class org.objectweb.asm.AnnotationVisitor

        getDelegate, visitAnnotation, visitEnd
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • className

        private final java.lang.String className
      • values

        private final Multimap<java.lang.String,​java.lang.Object> values
    • Constructor Detail

      • AnnotationInvocationHandler

        public AnnotationInvocationHandler​(java.lang.String className,
                                           org.objectweb.asm.AnnotationVisitor annotationVisitor)
    • Method Detail

      • invoke

        public java.lang.Object invoke​(java.lang.Object proxy,
                                       java.lang.reflect.Method method,
                                       java.lang.Object[] args)
                                throws java.lang.Throwable
        Specified by:
        invoke in interface java.lang.reflect.InvocationHandler
        Throws:
        java.lang.Throwable
      • peelSingle

        private java.lang.Object peelSingle​(java.util.Collection<java.lang.Object> vs)
      • toStringImpl

        private java.lang.String toStringImpl()
      • parseEnum

        private java.lang.Object parseEnum​(java.lang.Class<?> type,
                                           java.lang.Object res)
                                    throws java.lang.Exception
        Throws:
        java.lang.Exception
      • hashcodeImpl

        private int hashcodeImpl()
      • equalsImpl

        private boolean equalsImpl​(java.lang.Object arg)
      • visit

        public void visit​(java.lang.String name,
                          java.lang.Object value)
        Overrides:
        visit in class org.objectweb.asm.AnnotationVisitor
      • visitEnum

        public void visitEnum​(java.lang.String name,
                              java.lang.String desc,
                              java.lang.String value)
        Overrides:
        visitEnum in class org.objectweb.asm.AnnotationVisitor
      • visitArray

        public org.objectweb.asm.AnnotationVisitor visitArray​(java.lang.String name)
        Overrides:
        visitArray in class org.objectweb.asm.AnnotationVisitor