public class org.glassfish.jersey.server.model.ResourceModel$Builder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.glassfish.jersey.server.model.ResourceModel$Builder
  super_class: java.lang.Object
{
  private final java.util.List<org.glassfish.jersey.server.model.Resource> resources;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/glassfish/jersey/server/model/Resource;>;

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

  public void <init>(org.glassfish.jersey.server.model.ResourceModel, boolean);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceModel;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
        start local 1 // org.glassfish.jersey.server.model.ResourceModel resourceModel
        start local 2 // boolean subResourceModel
         0: .line 55
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            aload 1 /* resourceModel */
            invokevirtual org.glassfish.jersey.server.model.ResourceModel.getResources:()Ljava/util/List;
            putfield org.glassfish.jersey.server.model.ResourceModel$Builder.resources:Ljava/util/List;
         2: .line 57
            aload 0 /* this */
            iload 2 /* subResourceModel */
            putfield org.glassfish.jersey.server.model.ResourceModel$Builder.subResourceModel:Z
         3: .line 58
            return
        end local 2 // boolean subResourceModel
        end local 1 // org.glassfish.jersey.server.model.ResourceModel resourceModel
        end local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lorg/glassfish/jersey/server/model/ResourceModel$Builder;
            0    4     1     resourceModel  Lorg/glassfish/jersey/server/model/ResourceModel;
            0    4     2  subResourceModel  Z
    MethodParameters:
                  Name  Flags
      resourceModel     
      subResourceModel  

  public void <init>(java.util.List<org.glassfish.jersey.server.model.Resource>, );
    descriptor: (Ljava/util/List;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
        start local 1 // java.util.List resources
        start local 2 // boolean subResourceModel
         0: .line 67
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 68
            aload 0 /* this */
            aload 1 /* resources */
            putfield org.glassfish.jersey.server.model.ResourceModel$Builder.resources:Ljava/util/List;
         2: .line 69
            aload 0 /* this */
            iload 2 /* subResourceModel */
            putfield org.glassfish.jersey.server.model.ResourceModel$Builder.subResourceModel:Z
         3: .line 70
            return
        end local 2 // boolean subResourceModel
        end local 1 // java.util.List resources
        end local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lorg/glassfish/jersey/server/model/ResourceModel$Builder;
            0    4     1         resources  Ljava/util/List<Lorg/glassfish/jersey/server/model/Resource;>;
            0    4     2  subResourceModel  Z
    Signature: (Ljava/util/List<Lorg/glassfish/jersey/server/model/Resource;>;Z)V
    MethodParameters:
                  Name  Flags
      resources         
      subResourceModel  

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
        start local 1 // boolean subResourceModel
         0: .line 78
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 79
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.glassfish.jersey.server.model.ResourceModel$Builder.resources:Ljava/util/List;
         2: .line 80
            aload 0 /* this */
            iload 1 /* subResourceModel */
            putfield org.glassfish.jersey.server.model.ResourceModel$Builder.subResourceModel:Z
         3: .line 81
            return
        end local 1 // boolean subResourceModel
        end local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lorg/glassfish/jersey/server/model/ResourceModel$Builder;
            0    4     1  subResourceModel  Z
    MethodParameters:
                  Name  Flags
      subResourceModel  

  public org.glassfish.jersey.server.model.ResourceModel$Builder addResource(org.glassfish.jersey.server.model.Resource);
    descriptor: (Lorg/glassfish/jersey/server/model/Resource;)Lorg/glassfish/jersey/server/model/ResourceModel$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
        start local 1 // org.glassfish.jersey.server.model.Resource resource
         0: .line 91
            aload 0 /* this */
            getfield org.glassfish.jersey.server.model.ResourceModel$Builder.resources:Ljava/util/List;
            aload 1 /* resource */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 92
            aload 0 /* this */
            areturn
        end local 1 // org.glassfish.jersey.server.model.Resource resource
        end local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/glassfish/jersey/server/model/ResourceModel$Builder;
            0    2     1  resource  Lorg/glassfish/jersey/server/model/Resource;
    MethodParameters:
          Name  Flags
      resource  

  public org.glassfish.jersey.server.model.ResourceModel build();
    descriptor: ()Lorg/glassfish/jersey/server/model/ResourceModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
         0: .line 101
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            astore 1 /* resourceMap */
        start local 1 // java.util.Map resourceMap
         1: .line 103
            new java.util.IdentityHashMap
            dup
            invokespecial java.util.IdentityHashMap.<init>:()V
            invokestatic java.util.Collections.newSetFromMap:(Ljava/util/Map;)Ljava/util/Set;
            astore 2 /* separateResources */
        start local 2 // java.util.Set separateResources
         2: .line 105
            aload 0 /* this */
            getfield org.glassfish.jersey.server.model.ResourceModel$Builder.resources:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 13
      StackMap locals: org.glassfish.jersey.server.model.ResourceModel$Builder java.util.Map java.util.Set top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.Resource
            astore 3 /* resource */
        start local 3 // org.glassfish.jersey.server.model.Resource resource
         4: .line 106
            aload 3 /* resource */
            invokevirtual org.glassfish.jersey.server.model.Resource.getPath:()Ljava/lang/String;
            astore 5 /* path */
        start local 5 // java.lang.String path
         5: .line 107
            aload 5 /* path */
            ifnonnull 8
            aload 0 /* this */
            getfield org.glassfish.jersey.server.model.ResourceModel$Builder.subResourceModel:Z
            ifne 8
         6: .line 108
            aload 2 /* separateResources */
            aload 3 /* resource */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         7: .line 109
            goto 13
         8: .line 110
      StackMap locals: org.glassfish.jersey.server.model.ResourceModel$Builder java.util.Map java.util.Set org.glassfish.jersey.server.model.Resource java.util.Iterator java.lang.String
      StackMap stack:
            aload 1 /* resourceMap */
            aload 5 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.Resource
            astore 6 /* fromMap */
        start local 6 // org.glassfish.jersey.server.model.Resource fromMap
         9: .line 111
            aload 6 /* fromMap */
            ifnonnull 12
        10: .line 112
            aload 1 /* resourceMap */
            aload 5 /* path */
            aload 3 /* resource */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 113
            goto 13
        12: .line 114
      StackMap locals: org.glassfish.jersey.server.model.Resource
      StackMap stack:
            aload 1 /* resourceMap */
            aload 5 /* path */
            aload 6 /* fromMap */
            invokestatic org.glassfish.jersey.server.model.Resource.builder:(Lorg/glassfish/jersey/server/model/Resource;)Lorg/glassfish/jersey/server/model/Resource$Builder;
            aload 3 /* resource */
            invokevirtual org.glassfish.jersey.server.model.Resource$Builder.mergeWith:(Lorg/glassfish/jersey/server/model/Resource;)Lorg/glassfish/jersey/server/model/Resource$Builder;
            invokevirtual org.glassfish.jersey.server.model.Resource$Builder.build:()Lorg/glassfish/jersey/server/model/Resource;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // org.glassfish.jersey.server.model.Resource fromMap
        end local 5 // java.lang.String path
        end local 3 // org.glassfish.jersey.server.model.Resource resource
        13: .line 105
      StackMap locals: org.glassfish.jersey.server.model.ResourceModel$Builder java.util.Map java.util.Set top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        14: .line 118
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* rootResources */
        start local 3 // java.util.List rootResources
        15: .line 119
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* allResources */
        start local 4 // java.util.List allResources
        16: .line 121
            aload 1 /* resourceMap */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 21
      StackMap locals: org.glassfish.jersey.server.model.ResourceModel$Builder java.util.Map java.util.Set java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        17: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* entry */
        start local 5 // java.util.Map$Entry entry
        18: .line 122
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            ifnull 20
        19: .line 123
            aload 3 /* rootResources */
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.Resource
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        20: .line 125
      StackMap locals: org.glassfish.jersey.server.model.ResourceModel$Builder java.util.Map java.util.Set java.util.List java.util.List java.util.Map$Entry java.util.Iterator
      StackMap stack:
            aload 4 /* allResources */
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.Resource
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.util.Map$Entry entry
        21: .line 121
      StackMap locals: org.glassfish.jersey.server.model.ResourceModel$Builder java.util.Map java.util.Set java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        22: .line 127
            aload 0 /* this */
            getfield org.glassfish.jersey.server.model.ResourceModel$Builder.subResourceModel:Z
            ifne 24
        23: .line 128
            aload 4 /* allResources */
            aload 2 /* separateResources */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        24: .line 131
      StackMap locals: org.glassfish.jersey.server.model.ResourceModel$Builder java.util.Map java.util.Set java.util.List java.util.List
      StackMap stack:
            new org.glassfish.jersey.server.model.ResourceModel
            dup
            aload 3 /* rootResources */
            aload 4 /* allResources */
            invokespecial org.glassfish.jersey.server.model.ResourceModel.<init>:(Ljava/util/List;Ljava/util/List;)V
            areturn
        end local 4 // java.util.List allResources
        end local 3 // java.util.List rootResources
        end local 2 // java.util.Set separateResources
        end local 1 // java.util.Map resourceMap
        end local 0 // org.glassfish.jersey.server.model.ResourceModel$Builder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   25     0               this  Lorg/glassfish/jersey/server/model/ResourceModel$Builder;
            1   25     1        resourceMap  Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/jersey/server/model/Resource;>;
            2   25     2  separateResources  Ljava/util/Set<Lorg/glassfish/jersey/server/model/Resource;>;
            4   13     3           resource  Lorg/glassfish/jersey/server/model/Resource;
            5   13     5               path  Ljava/lang/String;
            9   13     6            fromMap  Lorg/glassfish/jersey/server/model/Resource;
           15   25     3      rootResources  Ljava/util/List<Lorg/glassfish/jersey/server/model/Resource;>;
           16   25     4       allResources  Ljava/util/List<Lorg/glassfish/jersey/server/model/Resource;>;
           18   21     5              entry  Ljava/util/Map$Entry<Ljava/lang/String;Lorg/glassfish/jersey/server/model/Resource;>;
}
SourceFile: "ResourceModel.java"
NestHost: org.glassfish.jersey.server.model.ResourceModel
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public final Builder = org.glassfish.jersey.server.model.Resource$Builder of org.glassfish.jersey.server.model.Resource
  public Builder = org.glassfish.jersey.server.model.ResourceModel$Builder of org.glassfish.jersey.server.model.ResourceModel