public class org.apache.bcel.verifier.VerifierFactoryListModel implements org.apache.bcel.verifier.VerifierFactoryObserver, javax.swing.ListModel<java.lang.String>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.bcel.verifier.VerifierFactoryListModel
  super_class: java.lang.Object
{
  private final java.util.List<javax.swing.event.ListDataListener> listeners;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Ljavax/swing/event/ListDataListener;>;

  private final java.util.Set<java.lang.String> cache;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
         0: .line 37
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 34
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.apache.bcel.verifier.VerifierFactoryListModel.listeners:Ljava/util/List;
         2: .line 35
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield org.apache.bcel.verifier.VerifierFactoryListModel.cache:Ljava/util/Set;
         3: .line 38
            aload 0 /* this */
            invokestatic org.apache.bcel.verifier.VerifierFactory.attach:(Lorg/apache/bcel/verifier/VerifierFactoryObserver;)V
         4: .line 39
            aload 0 /* this */
            aconst_null
            invokevirtual org.apache.bcel.verifier.VerifierFactoryListModel.update:(Ljava/lang/String;)V
         5: .line 40
            return
        end local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/apache/bcel/verifier/VerifierFactoryListModel;

  public synchronized void update(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=7, locals=8, args_size=2
        start local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
        start local 1 // java.lang.String s
         0: .line 44
            invokestatic org.apache.bcel.verifier.VerifierFactory.getVerifiers:()[Lorg/apache/bcel/verifier/Verifier;
            astore 2 /* verifiers */
        start local 2 // org.apache.bcel.verifier.Verifier[] verifiers
         1: .line 45
            aload 2 /* verifiers */
            arraylength
            istore 3 /* num_of_verifiers */
        start local 3 // int num_of_verifiers
         2: .line 46
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.cache:Ljava/util/Set;
            invokeinterface java.util.Set.clear:()V
         3: .line 47
            aload 2 /* verifiers */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 7
      StackMap locals: org.apache.bcel.verifier.VerifierFactoryListModel java.lang.String org.apache.bcel.verifier.Verifier[] int top int int org.apache.bcel.verifier.Verifier[]
      StackMap stack:
         4: aload 7
            iload 5
            aaload
            astore 4 /* verifier */
        start local 4 // org.apache.bcel.verifier.Verifier verifier
         5: .line 48
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.cache:Ljava/util/Set;
            aload 4 /* verifier */
            invokevirtual org.apache.bcel.verifier.Verifier.getClassName:()Ljava/lang/String;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // org.apache.bcel.verifier.Verifier verifier
         6: .line 47
            iinc 5 1
      StackMap locals:
      StackMap stack:
         7: iload 5
            iload 6
            if_icmplt 4
         8: .line 50
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 12
      StackMap locals: org.apache.bcel.verifier.VerifierFactoryListModel java.lang.String org.apache.bcel.verifier.Verifier[] int top java.util.Iterator
      StackMap stack:
         9: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.swing.event.ListDataListener
            astore 4 /* listener */
        start local 4 // javax.swing.event.ListDataListener listener
        10: .line 51
            new javax.swing.event.ListDataEvent
            dup
            aload 0 /* this */
            iconst_0
            iconst_0
            iload 3 /* num_of_verifiers */
            iconst_1
            isub
            invokespecial javax.swing.event.ListDataEvent.<init>:(Ljava/lang/Object;III)V
            astore 6 /* e */
        start local 6 // javax.swing.event.ListDataEvent e
        11: .line 52
            aload 4 /* listener */
            aload 6 /* e */
            invokeinterface javax.swing.event.ListDataListener.contentsChanged:(Ljavax/swing/event/ListDataEvent;)V
        end local 6 // javax.swing.event.ListDataEvent e
        end local 4 // javax.swing.event.ListDataListener listener
        12: .line 50
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 54
            return
        end local 3 // int num_of_verifiers
        end local 2 // org.apache.bcel.verifier.Verifier[] verifiers
        end local 1 // java.lang.String s
        end local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   14     0              this  Lorg/apache/bcel/verifier/VerifierFactoryListModel;
            0   14     1                 s  Ljava/lang/String;
            1   14     2         verifiers  [Lorg/apache/bcel/verifier/Verifier;
            2   14     3  num_of_verifiers  I
            5    6     4          verifier  Lorg/apache/bcel/verifier/Verifier;
           10   12     4          listener  Ljavax/swing/event/ListDataListener;
           11   12     6                 e  Ljavax/swing/event/ListDataEvent;
    MethodParameters:
      Name  Flags
      s     final

  public synchronized void addListDataListener(javax.swing.event.ListDataListener);
    descriptor: (Ljavax/swing/event/ListDataListener;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
        start local 1 // javax.swing.event.ListDataListener l
         0: .line 58
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.listeners:Ljava/util/List;
            aload 1 /* l */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 59
            return
        end local 1 // javax.swing.event.ListDataListener l
        end local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/bcel/verifier/VerifierFactoryListModel;
            0    2     1     l  Ljavax/swing/event/ListDataListener;
    MethodParameters:
      Name  Flags
      l     final

  public synchronized void removeListDataListener(javax.swing.event.ListDataListener);
    descriptor: (Ljavax/swing/event/ListDataListener;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
        start local 1 // javax.swing.event.ListDataListener l
         0: .line 63
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.listeners:Ljava/util/List;
            aload 1 /* l */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 64
            return
        end local 1 // javax.swing.event.ListDataListener l
        end local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/bcel/verifier/VerifierFactoryListModel;
            0    2     1     l  Ljavax/swing/event/ListDataListener;
    MethodParameters:
      Name  Flags
      l     final

  public synchronized int getSize();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
         0: .line 68
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.cache:Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            ireturn
        end local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/bcel/verifier/VerifierFactoryListModel;

  public synchronized java.lang.String getElementAt(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
        start local 1 // int index
         0: .line 73
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.cache:Ljava/util/Set;
            aload 0 /* this */
            getfield org.apache.bcel.verifier.VerifierFactoryListModel.cache:Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            anewarray java.lang.String
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            iload 1 /* index */
            aaload
            areturn
        end local 1 // int index
        end local 0 // org.apache.bcel.verifier.VerifierFactoryListModel this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/bcel/verifier/VerifierFactoryListModel;
            0    1     1  index  I
    MethodParameters:
       Name  Flags
      index  final

  public java.lang.Object getElementAt(int);
    descriptor: (I)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual org.apache.bcel.verifier.VerifierFactoryListModel.getElementAt:(I)Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Lorg/apache/bcel/verifier/VerifierFactoryObserver;Ljavax/swing/ListModel<Ljava/lang/String;>;
SourceFile: "VerifierFactoryListModel.java"