Package org.pf4j.asm

Class ExtensionVisitor


  • class ExtensionVisitor
    extends org.objectweb.asm.ClassVisitor
    This visitor extracts an ExtensionInfo from any class, that holds an Extension annotation.

    The annotation parameters are extracted from byte code by using the ASM library. This makes it possible to access the Extension parameters without loading the class into the class loader. This avoids possible NoClassDefFoundError's for extensions, that can't be loaded due to missing dependencies.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static int ASM_VERSION  
      private ExtensionInfo extensionInfo  
      private static org.slf4j.Logger log  
      • Fields inherited from class org.objectweb.asm.ClassVisitor

        api, cv
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.objectweb.asm.AnnotationVisitor visitAnnotation​(java.lang.String descriptor, boolean visible)  
      • Methods inherited from class org.objectweb.asm.ClassVisitor

        getDelegate, visit, visitAttribute, visitEnd, visitField, visitInnerClass, visitMethod, visitModule, visitNestHost, visitNestMember, visitOuterClass, visitPermittedSubclass, visitRecordComponent, visitSource, visitTypeAnnotation
      • Methods inherited from class java.lang.Object

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

      • log

        private static final org.slf4j.Logger log
    • Constructor Detail

      • ExtensionVisitor

        ExtensionVisitor​(ExtensionInfo extensionInfo)
    • Method Detail

      • visitAnnotation

        public org.objectweb.asm.AnnotationVisitor visitAnnotation​(java.lang.String descriptor,
                                                                   boolean visible)
        Overrides:
        visitAnnotation in class org.objectweb.asm.ClassVisitor