final class com.sun.jmx.mbeanserver.Repository$ObjectNamePattern
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.sun.jmx.mbeanserver.Repository$ObjectNamePattern
  super_class: java.lang.Object
{
  private final char[] domain;
    descriptor: [C
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

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

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

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

  public final javax.management.ObjectName pattern;
    descriptor: Ljavax/management/ObjectName;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public void <init>(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // com.sun.jmx.mbeanserver.Repository$ObjectNamePattern this
        start local 1 // javax.management.ObjectName pattern
         0: .line 109
            aload 0 /* this */
            aload 1 /* pattern */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
         1: .line 110
            aload 1 /* pattern */
            invokevirtual javax.management.ObjectName.isPropertyListPattern:()Z
         2: .line 111
            aload 1 /* pattern */
            invokevirtual javax.management.ObjectName.isPropertyValuePattern:()Z
         3: .line 112
            aload 1 /* pattern */
            invokevirtual javax.management.ObjectName.getCanonicalKeyPropertyListString:()Ljava/lang/String;
         4: .line 113
            aload 1 /* pattern */
            invokevirtual javax.management.ObjectName.getKeyPropertyList:()Ljava/util/Hashtable;
         5: .line 114
            aload 1 /* pattern */
            invokespecial com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.<init>:(Ljava/lang/String;ZZLjava/lang/String;Ljava/util/Map;Ljavax/management/ObjectName;)V
         6: .line 115
            return
        end local 1 // javax.management.ObjectName pattern
        end local 0 // com.sun.jmx.mbeanserver.Repository$ObjectNamePattern this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/sun/jmx/mbeanserver/Repository$ObjectNamePattern;
            0    7     1  pattern  Ljavax/management/ObjectName;
    MethodParameters:
         Name  Flags
      pattern  

  void <init>(java.lang.String, boolean, boolean, java.lang.String, java.util.Map<java.lang.String, java.lang.String>, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;ZZLjava/lang/String;Ljava/util/Map;Ljavax/management/ObjectName;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=11, args_size=7
        start local 0 // com.sun.jmx.mbeanserver.Repository$ObjectNamePattern this
        start local 1 // java.lang.String domain
        start local 2 // boolean propertyListPattern
        start local 3 // boolean propertyValuePattern
        start local 4 // java.lang.String canonicalProps
        start local 5 // java.util.Map keyPropertyList
        start local 6 // javax.management.ObjectName pattern
         0: .line 127
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 133
            aload 0 /* this */
            aload 1 /* domain */
            invokevirtual java.lang.String.toCharArray:()[C
            putfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.domain:[C
         2: .line 134
            aload 0 /* this */
            iload 2 /* propertyListPattern */
            putfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.isPropertyListPattern:Z
         3: .line 135
            aload 0 /* this */
            iload 3 /* propertyValuePattern */
            putfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.isPropertyValuePattern:Z
         4: .line 136
            aload 0 /* this */
            aload 4 /* canonicalProps */
            putfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.properties:Ljava/lang/String;
         5: .line 137
            aload 5 /* keyPropertyList */
            invokeinterface java.util.Map.size:()I
            istore 7 /* len */
        start local 7 // int len
         6: .line 138
            aload 0 /* this */
            iload 7 /* len */
            anewarray java.lang.String
            putfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.keys:[Ljava/lang/String;
         7: .line 139
            aload 0 /* this */
            iload 7 /* len */
            anewarray java.lang.String
            putfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.values:[Ljava/lang/String;
         8: .line 140
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         9: .line 141
            aload 5 /* keyPropertyList */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 10
            goto 14
      StackMap locals: com.sun.jmx.mbeanserver.Repository$ObjectNamePattern java.lang.String int int java.lang.String java.util.Map javax.management.ObjectName int int top java.util.Iterator
      StackMap stack:
        10: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 9 /* entry */
        start local 9 // java.util.Map$Entry entry
        11: .line 142
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.keys:[Ljava/lang/String;
            iload 8 /* i */
            aload 9 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aastore
        12: .line 143
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.values:[Ljava/lang/String;
            iload 8 /* i */
            aload 9 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            aastore
        13: .line 144
            iinc 8 /* i */ 1
        end local 9 // java.util.Map$Entry entry
        14: .line 141
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        15: .line 146
            aload 0 /* this */
            aload 6 /* pattern */
            putfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.pattern:Ljavax/management/ObjectName;
        16: .line 147
            return
        end local 8 // int i
        end local 7 // int len
        end local 6 // javax.management.ObjectName pattern
        end local 5 // java.util.Map keyPropertyList
        end local 4 // java.lang.String canonicalProps
        end local 3 // boolean propertyValuePattern
        end local 2 // boolean propertyListPattern
        end local 1 // java.lang.String domain
        end local 0 // com.sun.jmx.mbeanserver.Repository$ObjectNamePattern this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   17     0                  this  Lcom/sun/jmx/mbeanserver/Repository$ObjectNamePattern;
            0   17     1                domain  Ljava/lang/String;
            0   17     2   propertyListPattern  Z
            0   17     3  propertyValuePattern  Z
            0   17     4        canonicalProps  Ljava/lang/String;
            0   17     5       keyPropertyList  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0   17     6               pattern  Ljavax/management/ObjectName;
            6   17     7                   len  I
            9   17     8                     i  I
           11   14     9                 entry  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
    Signature: (Ljava/lang/String;ZZLjava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljavax/management/ObjectName;)V
    MethodParameters:
                      Name  Flags
      domain                
      propertyListPattern   
      propertyValuePattern  
      canonicalProps        
      keyPropertyList       
      pattern               

  public boolean matchKeys(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.sun.jmx.mbeanserver.Repository$ObjectNamePattern this
        start local 1 // javax.management.ObjectName name
         0: .line 162
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.isPropertyValuePattern:Z
            ifeq 4
         1: .line 163
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.isPropertyListPattern:Z
            ifne 4
         2: .line 164
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getKeyPropertyList:()Ljava/util/Hashtable;
            invokevirtual java.util.Hashtable.size:()I
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.keys:[Ljava/lang/String;
            arraylength
            if_icmpeq 4
         3: .line 165
            iconst_0
            ireturn
         4: .line 170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.isPropertyValuePattern:Z
            ifne 5
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.isPropertyListPattern:Z
            ifeq 21
         5: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.keys:[Ljava/lang/String;
            arraylength
            iconst_1
            isub
            istore 2 /* i */
        start local 2 // int i
         6: goto 19
         7: .line 175
      StackMap locals: int
      StackMap stack:
            aload 1 /* name */
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.keys:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            invokevirtual javax.management.ObjectName.getKeyProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* v */
        start local 3 // java.lang.String v
         8: .line 178
            aload 3 /* v */
            ifnonnull 9
            iconst_0
            ireturn
         9: .line 181
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.isPropertyValuePattern:Z
            ifeq 16
        10: .line 182
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.pattern:Ljavax/management/ObjectName;
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.keys:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            invokevirtual javax.management.ObjectName.isPropertyValuePattern:(Ljava/lang/String;)Z
            ifeq 16
        11: .line 184
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.values:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.String.toCharArray:()[C
            astore 4 /* val_pattern */
        start local 4 // char[] val_pattern
        12: .line 185
            aload 3 /* v */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 5 /* val_string */
        start local 5 // char[] val_string
        13: .line 186
            aload 5 /* val_string */
            aload 4 /* val_pattern */
            invokestatic com.sun.jmx.mbeanserver.Repository.wildmatch:([C[C)Z
            ifeq 15
        14: .line 187
            goto 18
        15: .line 189
      StackMap locals: char[] char[]
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // char[] val_string
        end local 4 // char[] val_pattern
        16: .line 191
      StackMap locals:
      StackMap stack:
            aload 3 /* v */
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.values:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
            goto 18
        17: .line 192
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // java.lang.String v
        18: .line 171
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
        19: iload 2 /* i */
            ifge 7
        end local 2 // int i
        20: .line 194
            iconst_1
            ireturn
        21: .line 199
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getCanonicalKeyPropertyListString:()Ljava/lang/String;
            astore 2 /* p1 */
        start local 2 // java.lang.String p1
        22: .line 200
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.Repository$ObjectNamePattern.properties:Ljava/lang/String;
            astore 3 /* p2 */
        start local 3 // java.lang.String p2
        23: .line 201
            aload 2 /* p1 */
            aload 3 /* p2 */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 3 // java.lang.String p2
        end local 2 // java.lang.String p1
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.mbeanserver.Repository$ObjectNamePattern this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0         this  Lcom/sun/jmx/mbeanserver/Repository$ObjectNamePattern;
            0   24     1         name  Ljavax/management/ObjectName;
            6   20     2            i  I
            8   18     3            v  Ljava/lang/String;
           12   16     4  val_pattern  [C
           13   16     5   val_string  [C
           22   24     2           p1  Ljava/lang/String;
           23   24     3           p2  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  
}
SourceFile: "Repository.java"
NestHost: com.sun.jmx.mbeanserver.Repository
InnerClasses:
  private final ObjectNamePattern = com.sun.jmx.mbeanserver.Repository$ObjectNamePattern of com.sun.jmx.mbeanserver.Repository
  public abstract Entry = java.util.Map$Entry of java.util.Map