public class edu.umd.cs.findbugs.DetectorFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: edu.umd.cs.findbugs.DetectorFactory
  super_class: java.lang.Object
{
  private static final boolean DEBUG_JAVA_VERSION;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final boolean SUPPORT_OLD_DETECTOR_INTERFACE;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.Class<?>[] constructorArgTypes;
    descriptor: [Ljava/lang/Class;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: [Ljava/lang/Class<*>;

  private final edu.umd.cs.findbugs.Plugin plugin;
    descriptor: Ledu/umd/cs/findbugs/Plugin;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    RuntimeVisibleAnnotations: 
      javax.annotation.Nonnull()

  private final edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator detectorCreator;
    descriptor: Ledu/umd/cs/findbugs/DetectorFactory$ReflectionDetectorCreator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String className;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    RuntimeVisibleAnnotations: 
      javax.annotation.Nonnull()
      edu.umd.cs.findbugs.internalAnnotations.DottedClassName()

  private int positionSpecifiedInPluginDescriptor;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private final boolean defEnabled;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String speed;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String reports;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String requireJRE;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.String detailHTML;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private int priorityAdjustment;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean enabledButNonReporting;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean hidden;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 41
            ldc "findbugs.debug.javaversion"
            invokestatic edu.umd.cs.findbugs.SystemProperties.getBoolean:(Ljava/lang/String;)Z
            putstatic edu.umd.cs.findbugs.DetectorFactory.DEBUG_JAVA_VERSION:Z
         1: .line 49
            ldc "findbugs.support.old.detector.interface"
            invokestatic edu.umd.cs.findbugs.SystemProperties.getBoolean:(Ljava/lang/String;)Z
         2: .line 48
            putstatic edu.umd.cs.findbugs.DetectorFactory.SUPPORT_OLD_DETECTOR_INTERFACE:Z
         3: .line 51
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ledu/umd/cs/findbugs/BugReporter;
            aastore
            putstatic edu.umd.cs.findbugs.DetectorFactory.constructorArgTypes:[Ljava/lang/Class;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(edu.umd.cs.findbugs.Plugin, java.lang.String, java.lang.Class<?>, boolean, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ledu/umd/cs/findbugs/Plugin;Ljava/lang/String;Ljava/lang/Class;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=8
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // edu.umd.cs.findbugs.Plugin plugin
        start local 2 // java.lang.String className
        start local 3 // java.lang.Class detectorClass
        start local 4 // boolean enabled
        start local 5 // java.lang.String speed
        start local 6 // java.lang.String reports
        start local 7 // java.lang.String requireJRE
         0: .line 160
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 163
            aload 0 /* this */
            aload 1 /* plugin */
            putfield edu.umd.cs.findbugs.DetectorFactory.plugin:Ledu/umd/cs/findbugs/Plugin;
         2: .line 164
            aload 0 /* this */
            aload 2 /* className */
            putfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
         3: .line 165
            aload 0 /* this */
            invokestatic edu.umd.cs.findbugs.FindBugs.isNoAnalysis:()Z
            ifeq 4
            aconst_null
            goto 5
      StackMap locals: edu.umd.cs.findbugs.DetectorFactory edu.umd.cs.findbugs.Plugin java.lang.String java.lang.Class int java.lang.String java.lang.String java.lang.String
      StackMap stack: edu.umd.cs.findbugs.DetectorFactory
         4: new edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator
            dup
            aload 3 /* detectorClass */
            invokespecial edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator.<init>:(Ljava/lang/Class;)V
      StackMap locals: edu.umd.cs.findbugs.DetectorFactory edu.umd.cs.findbugs.Plugin java.lang.String java.lang.Class int java.lang.String java.lang.String java.lang.String
      StackMap stack: edu.umd.cs.findbugs.DetectorFactory edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator
         5: putfield edu.umd.cs.findbugs.DetectorFactory.detectorCreator:Ledu/umd/cs/findbugs/DetectorFactory$ReflectionDetectorCreator;
         6: .line 166
            aload 0 /* this */
            iload 4 /* enabled */
            putfield edu.umd.cs.findbugs.DetectorFactory.defEnabled:Z
         7: .line 167
            aload 0 /* this */
            aload 5 /* speed */
            putfield edu.umd.cs.findbugs.DetectorFactory.speed:Ljava/lang/String;
         8: .line 168
            aload 0 /* this */
            aload 6 /* reports */
            putfield edu.umd.cs.findbugs.DetectorFactory.reports:Ljava/lang/String;
         9: .line 169
            aload 0 /* this */
            aload 7 /* requireJRE */
            putfield edu.umd.cs.findbugs.DetectorFactory.requireJRE:Ljava/lang/String;
        10: .line 170
            aload 0 /* this */
            iconst_0
            putfield edu.umd.cs.findbugs.DetectorFactory.priorityAdjustment:I
        11: .line 171
            aload 0 /* this */
            iconst_0
            putfield edu.umd.cs.findbugs.DetectorFactory.hidden:Z
        12: .line 172
            return
        end local 7 // java.lang.String requireJRE
        end local 6 // java.lang.String reports
        end local 5 // java.lang.String speed
        end local 4 // boolean enabled
        end local 3 // java.lang.Class detectorClass
        end local 2 // java.lang.String className
        end local 1 // edu.umd.cs.findbugs.Plugin plugin
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Ledu/umd/cs/findbugs/DetectorFactory;
            0   13     1         plugin  Ledu/umd/cs/findbugs/Plugin;
            0   13     2      className  Ljava/lang/String;
            0   13     3  detectorClass  Ljava/lang/Class<*>;
            0   13     4        enabled  Z
            0   13     5          speed  Ljava/lang/String;
            0   13     6        reports  Ljava/lang/String;
            0   13     7     requireJRE  Ljava/lang/String;
    Signature: (Ledu/umd/cs/findbugs/Plugin;Ljava/lang/String;Ljava/lang/Class<*>;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        javax.annotation.Nonnull()
      METHOD_FORMAL_PARAMETER
        javax.annotation.Nonnull()
    RuntimeVisibleParameterAnnotations: 
      0:
        javax.annotation.Nonnull()
      1:
        javax.annotation.Nonnull()
      2:
      3:
      4:
      5:
      6:
    MethodParameters:
               Name  Flags
      plugin         
      className      
      detectorClass  
      enabled        
      speed          
      reports        
      requireJRE     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 176
            aload 0 /* this */
            invokevirtual edu.umd.cs.findbugs.DetectorFactory.getShortName:()Ljava/lang/String;
            areturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public void setPositionSpecifiedInPluginDescriptor(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // int positionSpecifiedInPluginDescriptor
         0: .line 187
            aload 0 /* this */
            iload 1 /* positionSpecifiedInPluginDescriptor */
            putfield edu.umd.cs.findbugs.DetectorFactory.positionSpecifiedInPluginDescriptor:I
         1: .line 188
            return
        end local 1 // int positionSpecifiedInPluginDescriptor
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot                                 Name  Signature
            0    2     0                                 this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    2     1  positionSpecifiedInPluginDescriptor  I
    MethodParameters:
                                     Name  Flags
      positionSpecifiedInPluginDescriptor  

  public int getPositionSpecifiedInPluginDescriptor();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 197
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.positionSpecifiedInPluginDescriptor:I
            ireturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public edu.umd.cs.findbugs.Plugin getPlugin();
    descriptor: ()Ledu/umd/cs/findbugs/Plugin;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 206
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.plugin:Ledu/umd/cs/findbugs/Plugin;
            areturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public boolean isDetectorClassSubtypeOf(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // java.lang.Class otherClass
         0: .line 219
            invokestatic edu.umd.cs.findbugs.FindBugs.isNoAnalysis:()Z
            ifeq 2
         1: .line 220
            new java.lang.IllegalStateException
            dup
            ldc "No analysis specified"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 222
      StackMap locals:
      StackMap stack:
            aload 1 /* otherClass */
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.detectorCreator:Ledu/umd/cs/findbugs/DetectorFactory$ReflectionDetectorCreator;
            invokevirtual edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator.getDetectorClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ireturn
        end local 1 // java.lang.Class otherClass
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    3     1  otherClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
            Name  Flags
      otherClass  

  public boolean isReportingDetector();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 232
            aload 0 /* this */
            ldc Ledu/umd/cs/findbugs/TrainingDetector;
            invokevirtual edu.umd.cs.findbugs.DetectorFactory.isDetectorClassSubtypeOf:(Ljava/lang/Class;)Z
            ifne 1
            aload 0 /* this */
            ldc Ledu/umd/cs/findbugs/FirstPassDetector;
            invokevirtual edu.umd.cs.findbugs.DetectorFactory.isDetectorClassSubtypeOf:(Ljava/lang/Class;)Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public boolean isEnabledForCurrentJRE();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 244
            ldc ""
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.requireJRE:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 245
            iconst_1
            ireturn
         2: .line 248
      StackMap locals:
      StackMap stack:
            new edu.umd.cs.findbugs.JavaVersion
            dup
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.requireJRE:Ljava/lang/String;
            invokespecial edu.umd.cs.findbugs.JavaVersion.<init>:(Ljava/lang/String;)V
            astore 1 /* requiredVersion */
        start local 1 // edu.umd.cs.findbugs.JavaVersion requiredVersion
         3: .line 249
            invokestatic edu.umd.cs.findbugs.JavaVersion.getRuntimeVersion:()Ledu/umd/cs/findbugs/JavaVersion;
            astore 2 /* runtimeVersion */
        start local 2 // edu.umd.cs.findbugs.JavaVersion runtimeVersion
         4: .line 251
            getstatic edu.umd.cs.findbugs.DetectorFactory.DEBUG_JAVA_VERSION:Z
            ifeq 8
         5: .line 252
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Checking JRE version for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual edu.umd.cs.findbugs.DetectorFactory.getShortName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " (requires "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* requiredVersion */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         6: .line 253
            ldc ", running on "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* runtimeVersion */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 252
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 256
      StackMap locals: edu.umd.cs.findbugs.JavaVersion edu.umd.cs.findbugs.JavaVersion
      StackMap stack:
            aload 2 /* runtimeVersion */
            aload 1 /* requiredVersion */
            invokevirtual edu.umd.cs.findbugs.JavaVersion.isSameOrNewerThan:(Ledu/umd/cs/findbugs/JavaVersion;)Z
            istore 3 /* enabledForCurrentJRE */
        start local 3 // boolean enabledForCurrentJRE
         9: .line 257
            getstatic edu.umd.cs.findbugs.DetectorFactory.DEBUG_JAVA_VERSION:Z
            ifeq 11
        10: .line 258
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "\t==> "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* enabledForCurrentJRE */
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        11: .line 260
      StackMap locals: int
      StackMap stack:
            iload 3 /* enabledForCurrentJRE */
        12: ireturn
        end local 3 // boolean enabledForCurrentJRE
        end local 2 // edu.umd.cs.findbugs.JavaVersion runtimeVersion
        end local 1 // edu.umd.cs.findbugs.JavaVersion requiredVersion
        13: .line 261
      StackMap locals: edu.umd.cs.findbugs.DetectorFactory
      StackMap stack: edu.umd.cs.findbugs.JavaVersionException
            astore 1 /* e */
        start local 1 // edu.umd.cs.findbugs.JavaVersionException e
        14: .line 262
            getstatic edu.umd.cs.findbugs.DetectorFactory.DEBUG_JAVA_VERSION:Z
            ifeq 17
        15: .line 263
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Couldn't check Java version: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* e */
            invokevirtual edu.umd.cs.findbugs.JavaVersionException.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        16: .line 264
            aload 1 /* e */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual edu.umd.cs.findbugs.JavaVersionException.printStackTrace:(Ljava/io/PrintStream;)V
        17: .line 266
      StackMap locals: edu.umd.cs.findbugs.JavaVersionException
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // edu.umd.cs.findbugs.JavaVersionException e
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   18     0                  this  Ledu/umd/cs/findbugs/DetectorFactory;
            3   13     1       requiredVersion  Ledu/umd/cs/findbugs/JavaVersion;
            4   13     2        runtimeVersion  Ledu/umd/cs/findbugs/JavaVersion;
            9   13     3  enabledForCurrentJRE  Z
           14   18     1                     e  Ledu/umd/cs/findbugs/JavaVersionException;
      Exception table:
        from    to  target  type
           2    12      13  Class edu.umd.cs.findbugs.JavaVersionException

  public void setHidden(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // boolean hidden
         0: .line 279
            aload 0 /* this */
            iload 1 /* hidden */
            putfield edu.umd.cs.findbugs.DetectorFactory.hidden:Z
         1: .line 280
            return
        end local 1 // boolean hidden
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    2     1  hidden  Z
    MethodParameters:
        Name  Flags
      hidden  

  public boolean isHidden();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 286
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.hidden:Z
            ireturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public boolean isDefaultEnabled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 293
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.defEnabled:Z
            ireturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public void setPriorityAdjustment(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // int priorityAdjustment
         0: .line 303
            aload 0 /* this */
            iload 1 /* priorityAdjustment */
            putfield edu.umd.cs.findbugs.DetectorFactory.priorityAdjustment:I
         1: .line 304
            return
        end local 1 // int priorityAdjustment
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    2     1  priorityAdjustment  I
    MethodParameters:
                    Name  Flags
      priorityAdjustment  

  public void setEnabledButNonReporting(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // boolean notReporting
         0: .line 307
            aload 0 /* this */
            iload 1 /* notReporting */
            putfield edu.umd.cs.findbugs.DetectorFactory.enabledButNonReporting:Z
         1: .line 308
            return
        end local 1 // boolean notReporting
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    2     1  notReporting  Z
    MethodParameters:
              Name  Flags
      notReporting  

  public int getPriorityAdjustment();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 316
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.enabledButNonReporting:Z
            ifeq 2
         1: .line 317
            bipush 100
            ireturn
         2: .line 319
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.priorityAdjustment:I
            ireturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public java.lang.String getSpeed();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 327
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.speed:Ljava/lang/String;
            areturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public java.lang.String getReportedBugPatternCodes();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 334
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.reports:Ljava/lang/String;
            areturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public java.util.Set<edu.umd.cs.findbugs.BugPattern> getReportedBugPatterns();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 342
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            astore 1 /* result */
        start local 1 // java.util.Set result
         1: .line 343
            new java.util.StringTokenizer
            dup
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.reports:Ljava/lang/String;
            ldc ","
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* tok */
        start local 2 // java.util.StringTokenizer tok
         2: .line 344
            goto 7
         3: .line 345
      StackMap locals: java.util.Set java.util.StringTokenizer
      StackMap stack:
            aload 2 /* tok */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            astore 3 /* type */
        start local 3 // java.lang.String type
         4: .line 346
            invokestatic edu.umd.cs.findbugs.DetectorFactoryCollection.instance:()Ledu/umd/cs/findbugs/DetectorFactoryCollection;
            aload 3 /* type */
            invokevirtual edu.umd.cs.findbugs.DetectorFactoryCollection.lookupBugPattern:(Ljava/lang/String;)Ledu/umd/cs/findbugs/BugPattern;
            astore 4 /* bugPattern */
        start local 4 // edu.umd.cs.findbugs.BugPattern bugPattern
         5: .line 347
            aload 4 /* bugPattern */
            ifnull 7
         6: .line 348
            aload 1 /* result */
            aload 4 /* bugPattern */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // edu.umd.cs.findbugs.BugPattern bugPattern
        end local 3 // java.lang.String type
         7: .line 344
      StackMap locals:
      StackMap stack:
            aload 2 /* tok */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 3
         8: .line 351
            aload 1 /* result */
            areturn
        end local 2 // java.util.StringTokenizer tok
        end local 1 // java.util.Set result
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Ledu/umd/cs/findbugs/DetectorFactory;
            1    9     1      result  Ljava/util/Set<Ledu/umd/cs/findbugs/BugPattern;>;
            2    9     2         tok  Ljava/util/StringTokenizer;
            4    7     3        type  Ljava/lang/String;
            5    7     4  bugPattern  Ledu/umd/cs/findbugs/BugPattern;
    Signature: ()Ljava/util/Set<Ledu/umd/cs/findbugs/BugPattern;>;

  public java.lang.String getDetailHTML();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 358
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.detailHTML:Ljava/lang/String;
            areturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;

  public void setDetailHTML(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // java.lang.String detailHTML
         0: .line 365
            aload 0 /* this */
            aload 1 /* detailHTML */
            putfield edu.umd.cs.findbugs.DetectorFactory.detailHTML:Ljava/lang/String;
         1: .line 366
            return
        end local 1 // java.lang.String detailHTML
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    2     1  detailHTML  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      detailHTML  

  public edu.umd.cs.findbugs.Detector create(edu.umd.cs.findbugs.BugReporter);
    descriptor: (Ledu/umd/cs/findbugs/BugReporter;)Ledu/umd/cs/findbugs/Detector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // edu.umd.cs.findbugs.BugReporter bugReporter
         0: .line 379
            invokestatic edu.umd.cs.findbugs.FindBugs.isNoAnalysis:()Z
            ifeq 2
         1: .line 380
            new java.lang.IllegalStateException
            dup
            ldc "No analysis specified"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 382
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.detectorCreator:Ledu/umd/cs/findbugs/DetectorFactory$ReflectionDetectorCreator;
            aload 1 /* bugReporter */
            invokevirtual edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator.createDetector:(Ledu/umd/cs/findbugs/BugReporter;)Ledu/umd/cs/findbugs/Detector;
            areturn
        end local 1 // edu.umd.cs.findbugs.BugReporter bugReporter
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    3     1  bugReporter  Ledu/umd/cs/findbugs/BugReporter;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      bugReporter  

  public edu.umd.cs.findbugs.Detector2 createDetector2(edu.umd.cs.findbugs.BugReporter);
    descriptor: (Ledu/umd/cs/findbugs/BugReporter;)Ledu/umd/cs/findbugs/Detector2;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // edu.umd.cs.findbugs.BugReporter bugReporter
         0: .line 393
            invokestatic edu.umd.cs.findbugs.FindBugs.isNoAnalysis:()Z
            ifeq 2
         1: .line 394
            new java.lang.IllegalStateException
            dup
            ldc "No analysis specified"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 396
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.detectorCreator:Ledu/umd/cs/findbugs/DetectorFactory$ReflectionDetectorCreator;
            aload 1 /* bugReporter */
            invokevirtual edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator.createDetector2:(Ledu/umd/cs/findbugs/BugReporter;)Ledu/umd/cs/findbugs/Detector2;
            areturn
        end local 1 // edu.umd.cs.findbugs.BugReporter bugReporter
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Ledu/umd/cs/findbugs/DetectorFactory;
            0    3     1  bugReporter  Ledu/umd/cs/findbugs/BugReporter;
    MethodParameters:
             Name  Flags
      bugReporter  

  public java.lang.String getShortName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 404
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 1 /* endOfPkg */
        start local 1 // int endOfPkg
         1: .line 405
            iload 1 /* endOfPkg */
            iflt 3
         2: .line 406
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
            iload 1 /* endOfPkg */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
         3: .line 408
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
            areturn
        end local 1 // int endOfPkg
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ledu/umd/cs/findbugs/DetectorFactory;
            1    4     1  endOfPkg  I

  public java.lang.String getFullName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 417
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
            areturn
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/DetectorFactory;
    RuntimeVisibleAnnotations: 
      javax.annotation.Nonnull()
      edu.umd.cs.findbugs.internalAnnotations.DottedClassName()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        javax.annotation.Nonnull()
      METHOD_RETURN
        edu.umd.cs.findbugs.internalAnnotations.DottedClassName()

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
         0: .line 423
            iconst_1
            istore 1 /* result */
        start local 1 // int result
         1: .line 424
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 1 /* result */
         2: .line 425
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.plugin:Ledu/umd/cs/findbugs/Plugin;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* result */
         3: .line 426
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ledu/umd/cs/findbugs/DetectorFactory;
            1    4     1  result  I

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // edu.umd.cs.findbugs.DetectorFactory this
        start local 1 // java.lang.Object obj
         0: .line 431
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 432
            iconst_1
            ireturn
         2: .line 434
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof edu.umd.cs.findbugs.DetectorFactory
            ifne 4
         3: .line 435
            iconst_0
            ireturn
         4: .line 437
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            checkcast edu.umd.cs.findbugs.DetectorFactory
            astore 2 /* other */
        start local 2 // edu.umd.cs.findbugs.DetectorFactory other
         5: .line 438
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
            aload 2 /* other */
            getfield edu.umd.cs.findbugs.DetectorFactory.className:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 439
            iconst_0
            ireturn
         7: .line 441
      StackMap locals: edu.umd.cs.findbugs.DetectorFactory
      StackMap stack:
            aload 0 /* this */
            getfield edu.umd.cs.findbugs.DetectorFactory.plugin:Ledu/umd/cs/findbugs/Plugin;
            aload 2 /* other */
            getfield edu.umd.cs.findbugs.DetectorFactory.plugin:Ledu/umd/cs/findbugs/Plugin;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 9
         8: .line 442
            iconst_0
            ireturn
         9: .line 444
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // edu.umd.cs.findbugs.DetectorFactory other
        end local 1 // java.lang.Object obj
        end local 0 // edu.umd.cs.findbugs.DetectorFactory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Ledu/umd/cs/findbugs/DetectorFactory;
            0   10     1    obj  Ljava/lang/Object;
            5   10     2  other  Ledu/umd/cs/findbugs/DetectorFactory;
    MethodParameters:
      Name  Flags
      obj   
}
SourceFile: "DetectorFactory.java"
NestMembers:
  edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator
InnerClasses:
  ReflectionDetectorCreator = edu.umd.cs.findbugs.DetectorFactory$ReflectionDetectorCreator of edu.umd.cs.findbugs.DetectorFactory