public class javax.management.relation.RelationSupport implements javax.management.relation.RelationSupportMBean, javax.management.MBeanRegistration
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.management.relation.RelationSupport
  super_class: java.lang.Object
{
  private java.lang.String myRelId;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private javax.management.ObjectName myRelServiceName;
    descriptor: Ljavax/management/ObjectName;
    flags: (0x0002) ACC_PRIVATE

  private javax.management.MBeanServer myRelServiceMBeanServer;
    descriptor: Ljavax/management/MBeanServer;
    flags: (0x0002) ACC_PRIVATE

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

  private java.util.Map<java.lang.String, javax.management.relation.Role> myRoleName2ValueMap;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljavax/management/relation/Role;>;

  private java.lang.Boolean myInRelServFlg;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(java.lang.String, javax.management.ObjectName, java.lang.String, javax.management.relation.RoleList);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;Ljavax/management/relation/RoleList;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String relationId
        start local 2 // javax.management.ObjectName relationServiceName
        start local 3 // java.lang.String relationTypeName
        start local 4 // javax.management.relation.RoleList list
         0: .line 162
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 78
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
         2: .line 86
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
         3: .line 98
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
         4: .line 102
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
         5: .line 110
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
         6: .line 113
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myInRelServFlg:Ljava/lang/Boolean;
         7: .line 164
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         8: .line 165
            ldc "RelationSupport"
         9: .line 164
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
        10: .line 168
            aload 0 /* this */
            aload 1 /* relationId */
        11: .line 169
            aload 2 /* relationServiceName */
        12: .line 170
            aconst_null
        13: .line 171
            aload 3 /* relationTypeName */
        14: .line 172
            aload 4 /* list */
        15: .line 168
            invokevirtual javax.management.relation.RelationSupport.initMembers:(Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/MBeanServer;Ljava/lang/String;Ljavax/management/relation/RoleList;)V
        16: .line 174
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        17: .line 175
            ldc "RelationSupport"
        18: .line 174
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        19: .line 176
            return
        end local 4 // javax.management.relation.RoleList list
        end local 3 // java.lang.String relationTypeName
        end local 2 // javax.management.ObjectName relationServiceName
        end local 1 // java.lang.String relationId
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   20     0                 this  Ljavax/management/relation/RelationSupport;
            0   20     1           relationId  Ljava/lang/String;
            0   20     2  relationServiceName  Ljavax/management/ObjectName;
            0   20     3     relationTypeName  Ljava/lang/String;
            0   20     4                 list  Ljavax/management/relation/RoleList;
    Exceptions:
      throws javax.management.relation.InvalidRoleValueException, java.lang.IllegalArgumentException
    MethodParameters:
                     Name  Flags
      relationId           
      relationServiceName  
      relationTypeName     
      list                 

  public void <init>(java.lang.String, javax.management.ObjectName, javax.management.MBeanServer, java.lang.String, javax.management.relation.RoleList);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/MBeanServer;Ljava/lang/String;Ljavax/management/relation/RoleList;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String relationId
        start local 2 // javax.management.ObjectName relationServiceName
        start local 3 // javax.management.MBeanServer relationServiceMBeanServer
        start local 4 // java.lang.String relationTypeName
        start local 5 // javax.management.relation.RoleList list
         0: .line 234
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 78
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
         2: .line 86
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
         3: .line 98
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
         4: .line 102
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
         5: .line 110
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
         6: .line 113
            aload 0 /* this */
            aconst_null
            putfield javax.management.relation.RelationSupport.myInRelServFlg:Ljava/lang/Boolean;
         7: .line 236
            aload 3 /* relationServiceMBeanServer */
            ifnonnull 10
         8: .line 237
            ldc "Invalid parameter."
            astore 6 /* excMsg */
        start local 6 // java.lang.String excMsg
         9: .line 238
            new java.lang.IllegalArgumentException
            dup
            aload 6 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String excMsg
        10: .line 241
      StackMap locals: javax.management.relation.RelationSupport java.lang.String javax.management.ObjectName javax.management.MBeanServer java.lang.String javax.management.relation.RoleList
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        11: .line 242
            ldc "RelationSupport"
        12: .line 241
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
        13: .line 246
            aload 0 /* this */
            aload 1 /* relationId */
        14: .line 247
            aload 2 /* relationServiceName */
        15: .line 248
            aload 3 /* relationServiceMBeanServer */
        16: .line 249
            aload 4 /* relationTypeName */
        17: .line 250
            aload 5 /* list */
        18: .line 246
            invokevirtual javax.management.relation.RelationSupport.initMembers:(Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/MBeanServer;Ljava/lang/String;Ljavax/management/relation/RoleList;)V
        19: .line 252
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        20: .line 253
            ldc "RelationSupport"
        21: .line 252
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        22: .line 254
            return
        end local 5 // javax.management.relation.RoleList list
        end local 4 // java.lang.String relationTypeName
        end local 3 // javax.management.MBeanServer relationServiceMBeanServer
        end local 2 // javax.management.ObjectName relationServiceName
        end local 1 // java.lang.String relationId
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   23     0                        this  Ljavax/management/relation/RelationSupport;
            0   23     1                  relationId  Ljava/lang/String;
            0   23     2         relationServiceName  Ljavax/management/ObjectName;
            0   23     3  relationServiceMBeanServer  Ljavax/management/MBeanServer;
            0   23     4            relationTypeName  Ljava/lang/String;
            0   23     5                        list  Ljavax/management/relation/RoleList;
            9   10     6                      excMsg  Ljava/lang/String;
    Exceptions:
      throws javax.management.relation.InvalidRoleValueException, java.lang.IllegalArgumentException
    MethodParameters:
                            Name  Flags
      relationId                  
      relationServiceName         
      relationServiceMBeanServer  
      relationTypeName            
      list                        

  public java.util.List<javax.management.ObjectName> getRole(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String roleName
         0: .line 283
            aload 1 /* roleName */
            ifnonnull 3
         1: .line 284
            ldc "Invalid parameter."
            astore 2 /* excMsg */
        start local 2 // java.lang.String excMsg
         2: .line 285
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String excMsg
         3: .line 288
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 289
            ldc "getRole"
            aload 1 /* roleName */
         5: .line 288
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 294
            aload 0 /* this */
            aload 1 /* roleName */
            iconst_0
            aconst_null
            iconst_0
            invokevirtual javax.management.relation.RelationSupport.getRoleInt:(Ljava/lang/String;ZLjavax/management/relation/RelationService;Z)Ljava/lang/Object;
         7: .line 293
            invokestatic com.sun.jmx.mbeanserver.Util.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 2 /* result */
        start local 2 // java.util.List result
         8: .line 296
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "getRole"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 297
            aload 2 /* result */
            areturn
        end local 2 // java.util.List result
        end local 1 // java.lang.String roleName
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Ljavax/management/relation/RelationSupport;
            0   10     1  roleName  Ljava/lang/String;
            2    3     2    excMsg  Ljava/lang/String;
            8   10     2    result  Ljava/util/List<Ljavax/management/ObjectName;>;
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RoleNotFoundException, javax.management.relation.RelationServiceNotRegisteredException
    Signature: (Ljava/lang/String;)Ljava/util/List<Ljavax/management/ObjectName;>;
    MethodParameters:
          Name  Flags
      roleName  

  public javax.management.relation.RoleResult getRoles(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljavax/management/relation/RoleResult;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String[] roleNameArray
         0: .line 321
            aload 1 /* roleNameArray */
            ifnonnull 3
         1: .line 322
            ldc "Invalid parameter."
            astore 2 /* excMsg */
        start local 2 // java.lang.String excMsg
         2: .line 323
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String excMsg
         3: .line 326
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "getRoles"
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 329
            aload 0 /* this */
            aload 1 /* roleNameArray */
            iconst_0
            aconst_null
            invokevirtual javax.management.relation.RelationSupport.getRolesInt:([Ljava/lang/String;ZLjavax/management/relation/RelationService;)Ljavax/management/relation/RoleResult;
            astore 2 /* result */
        start local 2 // javax.management.relation.RoleResult result
         5: .line 331
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "getRoles"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 332
            aload 2 /* result */
            areturn
        end local 2 // javax.management.relation.RoleResult result
        end local 1 // java.lang.String[] roleNameArray
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Ljavax/management/relation/RelationSupport;
            0    7     1  roleNameArray  [Ljava/lang/String;
            2    3     2         excMsg  Ljava/lang/String;
            5    7     2         result  Ljavax/management/relation/RoleResult;
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RelationServiceNotRegisteredException
    MethodParameters:
               Name  Flags
      roleNameArray  

  public javax.management.relation.RoleResult getAllRoles();
    descriptor: ()Ljavax/management/relation/RoleResult;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 348
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         1: .line 349
            ldc "getAllRoles"
         2: .line 348
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 351
            aconst_null
            astore 1 /* result */
        start local 1 // javax.management.relation.RoleResult result
         4: .line 353
            aload 0 /* this */
            iconst_0
            aconst_null
            invokevirtual javax.management.relation.RelationSupport.getAllRolesInt:(ZLjavax/management/relation/RelationService;)Ljavax/management/relation/RoleResult;
            astore 1 /* result */
         5: .line 354
            goto 7
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.RoleResult
      StackMap stack: java.lang.IllegalArgumentException
         6: pop
         7: .line 358
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "getAllRoles"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
         8: .line 359
            aload 1 /* result */
            areturn
        end local 1 // javax.management.relation.RoleResult result
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljavax/management/relation/RelationSupport;
            4    9     1  result  Ljavax/management/relation/RoleResult;
      Exception table:
        from    to  target  type
           4     5       6  Class java.lang.IllegalArgumentException
    Exceptions:
      throws javax.management.relation.RelationServiceNotRegisteredException

  public javax.management.relation.RoleList retrieveAllRoles();
    descriptor: ()Ljavax/management/relation/RoleList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 369
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         1: .line 370
            ldc "retrieveAllRoles"
         2: .line 369
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 373
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 2
            monitorenter
         4: .line 375
            new javax.management.relation.RoleList
            dup
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            invokespecial javax.management.relation.RoleList.<init>:(Ljava/util/List;)V
         5: .line 374
            astore 1 /* result */
        start local 1 // javax.management.relation.RoleList result
         6: .line 373
            aload 2
            monitorexit
         7: goto 10
        end local 1 // javax.management.relation.RoleList result
      StackMap locals: javax.management.relation.RelationSupport top java.util.Map
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        start local 1 // javax.management.relation.RoleList result
        10: .line 378
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.RoleList
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        11: .line 379
            ldc "retrieveAllRoles"
        12: .line 378
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        13: .line 380
            aload 1 /* result */
            areturn
        end local 1 // javax.management.relation.RoleList result
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljavax/management/relation/RelationSupport;
            6    8     1  result  Ljavax/management/relation/RoleList;
           10   14     1  result  Ljavax/management/relation/RoleList;
      Exception table:
        from    to  target  type
           4     7       8  any
           8     9       8  any

  public java.lang.Integer getRoleCardinality(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Integer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String roleName
         0: .line 397
            aload 1 /* roleName */
            ifnonnull 3
         1: .line 398
            ldc "Invalid parameter."
            astore 2 /* excMsg */
        start local 2 // java.lang.String excMsg
         2: .line 399
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String excMsg
         3: .line 402
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 403
            ldc "getRoleCardinality"
            aload 1 /* roleName */
         5: .line 402
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 406
            aconst_null
            astore 2 /* role */
        start local 2 // javax.management.relation.Role role
         7: .line 407
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 3
            monitorenter
         8: .line 409
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            aload 1 /* roleName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 2 /* role */
         9: .line 407
            aload 3
            monitorexit
        10: goto 13
      StackMap locals: javax.management.relation.RelationSupport java.lang.String javax.management.relation.Role java.util.Map
      StackMap stack: java.lang.Throwable
        11: aload 3
            monitorexit
        12: athrow
        13: .line 411
      StackMap locals:
      StackMap stack:
            aload 2 /* role */
            ifnonnull 20
        14: .line 412
            iconst_1
            istore 3 /* pbType */
        start local 3 // int pbType
        15: .line 418
            iload 3 /* pbType */
        16: .line 419
            aload 1 /* roleName */
        17: .line 418
            invokestatic javax.management.relation.RelationService.throwRoleProblemException:(ILjava/lang/String;)V
        18: .line 420
            goto 20
      StackMap locals: javax.management.relation.RelationSupport java.lang.String javax.management.relation.Role int
      StackMap stack: javax.management.relation.InvalidRoleValueException
        19: pop
        end local 3 // int pbType
        20: .line 426
      StackMap locals:
      StackMap stack:
            aload 2 /* role */
            invokevirtual javax.management.relation.Role.getRoleValue:()Ljava/util/List;
            checkcast java.util.ArrayList
            astore 3 /* roleValue */
        start local 3 // java.util.ArrayList roleValue
        21: .line 428
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        22: .line 429
            ldc "getRoleCardinality"
        23: .line 428
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        24: .line 430
            new java.lang.Integer
            dup
            aload 3 /* roleValue */
            invokevirtual java.util.ArrayList.size:()I
            invokespecial java.lang.Integer.<init>:(I)V
            areturn
        end local 3 // java.util.ArrayList roleValue
        end local 2 // javax.management.relation.Role role
        end local 1 // java.lang.String roleName
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0       this  Ljavax/management/relation/RelationSupport;
            0   25     1   roleName  Ljava/lang/String;
            2    3     2     excMsg  Ljava/lang/String;
            7   25     2       role  Ljavax/management/relation/Role;
           15   20     3     pbType  I
           21   25     3  roleValue  Ljava/util/ArrayList;
      Exception table:
        from    to  target  type
           8    10      11  any
          11    12      11  any
          15    18      19  Class javax.management.relation.InvalidRoleValueException
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RoleNotFoundException
    MethodParameters:
          Name  Flags
      roleName  

  public void setRole(javax.management.relation.Role);
    descriptor: (Ljavax/management/relation/Role;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.relation.Role role
         0: .line 473
            aload 1 /* role */
            ifnonnull 3
         1: .line 474
            ldc "Invalid parameter."
            astore 2 /* excMsg */
        start local 2 // java.lang.String excMsg
         2: .line 475
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String excMsg
         3: .line 478
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 479
            ldc "setRole"
            aload 1 /* role */
         5: .line 478
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 482
            aload 0 /* this */
            aload 1 /* role */
            iconst_0
            aconst_null
            iconst_0
            invokevirtual javax.management.relation.RelationSupport.setRoleInt:(Ljavax/management/relation/Role;ZLjavax/management/relation/RelationService;Z)Ljava/lang/Object;
            pop
         7: .line 484
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "setRole"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
         8: .line 485
            return
        end local 1 // javax.management.relation.Role role
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljavax/management/relation/RelationSupport;
            0    9     1    role  Ljavax/management/relation/Role;
            2    3     2  excMsg  Ljava/lang/String;
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RoleNotFoundException, javax.management.relation.RelationTypeNotFoundException, javax.management.relation.InvalidRoleValueException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationNotFoundException
    MethodParameters:
      Name  Flags
      role  

  public javax.management.relation.RoleResult setRoles(javax.management.relation.RoleList);
    descriptor: (Ljavax/management/relation/RoleList;)Ljavax/management/relation/RoleResult;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.relation.RoleList list
         0: .line 518
            aload 1 /* list */
            ifnonnull 3
         1: .line 519
            ldc "Invalid parameter."
            astore 2 /* excMsg */
        start local 2 // java.lang.String excMsg
         2: .line 520
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String excMsg
         3: .line 523
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 524
            ldc "setRoles"
            aload 1 /* list */
         5: .line 523
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 526
            aload 0 /* this */
            aload 1 /* list */
            iconst_0
            aconst_null
            invokevirtual javax.management.relation.RelationSupport.setRolesInt:(Ljavax/management/relation/RoleList;ZLjavax/management/relation/RelationService;)Ljavax/management/relation/RoleResult;
            astore 2 /* result */
        start local 2 // javax.management.relation.RoleResult result
         7: .line 528
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "setRoles"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
         8: .line 529
            aload 2 /* result */
            areturn
        end local 2 // javax.management.relation.RoleResult result
        end local 1 // javax.management.relation.RoleList list
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljavax/management/relation/RelationSupport;
            0    9     1    list  Ljavax/management/relation/RoleList;
            2    3     2  excMsg  Ljava/lang/String;
            7    9     2  result  Ljavax/management/relation/RoleResult;
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationTypeNotFoundException, javax.management.relation.RelationNotFoundException
    MethodParameters:
      Name  Flags
      list  

  public void handleMBeanUnregistration(javax.management.ObjectName, java.lang.String);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.ObjectName objectName
        start local 2 // java.lang.String roleName
         0: .line 567
            aload 1 /* objectName */
            ifnull 1
            aload 2 /* roleName */
            ifnonnull 3
         1: .line 568
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 3 /* excMsg */
        start local 3 // java.lang.String excMsg
         2: .line 569
            new java.lang.IllegalArgumentException
            dup
            aload 3 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.String excMsg
         3: .line 572
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 573
            ldc "handleMBeanUnregistration"
         5: .line 574
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* objectName */
            aastore
            dup
            iconst_1
            aload 2 /* roleName */
            aastore
         6: .line 572
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
         7: .line 578
            aload 0 /* this */
            aload 1 /* objectName */
         8: .line 579
            aload 2 /* roleName */
         9: .line 580
            iconst_0
        10: .line 581
            aconst_null
        11: .line 578
            invokevirtual javax.management.relation.RelationSupport.handleMBeanUnregistrationInt:(Ljavax/management/ObjectName;Ljava/lang/String;ZLjavax/management/relation/RelationService;)V
        12: .line 583
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        13: .line 584
            ldc "handleMBeanUnregistration"
        14: .line 583
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        15: .line 585
            return
        end local 2 // java.lang.String roleName
        end local 1 // javax.management.ObjectName objectName
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Ljavax/management/relation/RelationSupport;
            0   16     1  objectName  Ljavax/management/ObjectName;
            0   16     2    roleName  Ljava/lang/String;
            2    3     3      excMsg  Ljava/lang/String;
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RoleNotFoundException, javax.management.relation.InvalidRoleValueException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationTypeNotFoundException, javax.management.relation.RelationNotFoundException
    MethodParameters:
            Name  Flags
      objectName  
      roleName    

  public java.util.Map<javax.management.ObjectName, java.util.List<java.lang.String>> getReferencedMBeans();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=11, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 596
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         1: .line 597
            ldc "getReferencedMBeans"
         2: .line 596
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 600
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
         4: .line 599
            astore 1 /* refMBeanMap */
        start local 1 // java.util.Map refMBeanMap
         5: .line 602
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 2
            monitorenter
         6: .line 604
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 22
      StackMap locals: javax.management.relation.RelationSupport java.util.Map java.util.Map top java.util.Iterator
      StackMap stack:
         7: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 3 /* currRole */
        start local 3 // javax.management.relation.Role currRole
         8: .line 606
            aload 3 /* currRole */
            invokevirtual javax.management.relation.Role.getRoleName:()Ljava/lang/String;
            astore 5 /* currRoleName */
        start local 5 // java.lang.String currRoleName
         9: .line 608
            aload 3 /* currRole */
            invokevirtual javax.management.relation.Role.getRoleValue:()Ljava/util/List;
            astore 6 /* currRefMBeanList */
        start local 6 // java.util.List currRefMBeanList
        10: .line 610
            aload 6 /* currRefMBeanList */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 21
      StackMap locals: javax.management.relation.RelationSupport java.util.Map java.util.Map javax.management.relation.Role java.util.Iterator java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
        11: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.ObjectName
            astore 7 /* currRoleObjName */
        start local 7 // javax.management.ObjectName currRoleObjName
        12: .line 615
            aload 1 /* refMBeanMap */
            aload 7 /* currRoleObjName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
        13: .line 614
            astore 9 /* mbeanRoleNameList */
        start local 9 // java.util.List mbeanRoleNameList
        14: .line 617
            iconst_0
            istore 10 /* newRefFlg */
        start local 10 // boolean newRefFlg
        15: .line 618
            aload 9 /* mbeanRoleNameList */
            ifnonnull 18
        16: .line 619
            iconst_1
            istore 10 /* newRefFlg */
        17: .line 620
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* mbeanRoleNameList */
        18: .line 622
      StackMap locals: javax.management.relation.RelationSupport java.util.Map java.util.Map javax.management.relation.Role java.util.Iterator java.lang.String java.util.List javax.management.ObjectName java.util.Iterator java.util.List int
      StackMap stack:
            aload 9 /* mbeanRoleNameList */
            aload 5 /* currRoleName */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 623
            iload 10 /* newRefFlg */
            ifeq 21
        20: .line 624
            aload 1 /* refMBeanMap */
            aload 7 /* currRoleObjName */
            aload 9 /* mbeanRoleNameList */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 10 // boolean newRefFlg
        end local 9 // java.util.List mbeanRoleNameList
        end local 7 // javax.management.ObjectName currRoleObjName
        21: .line 610
      StackMap locals: javax.management.relation.RelationSupport java.util.Map java.util.Map javax.management.relation.Role java.util.Iterator java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        end local 6 // java.util.List currRefMBeanList
        end local 5 // java.lang.String currRoleName
        end local 3 // javax.management.relation.Role currRole
        22: .line 604
      StackMap locals: javax.management.relation.RelationSupport java.util.Map java.util.Map top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        23: .line 602
            aload 2
            monitorexit
        24: goto 27
      StackMap locals: javax.management.relation.RelationSupport java.util.Map java.util.Map
      StackMap stack: java.lang.Throwable
        25: aload 2
            monitorexit
        26: athrow
        27: .line 630
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        28: .line 631
            ldc "getReferencedMBeans"
        29: .line 630
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        30: .line 632
            aload 1 /* refMBeanMap */
            areturn
        end local 1 // java.util.Map refMBeanMap
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   31     0               this  Ljavax/management/relation/RelationSupport;
            5   31     1        refMBeanMap  Ljava/util/Map<Ljavax/management/ObjectName;Ljava/util/List<Ljava/lang/String;>;>;
            8   22     3           currRole  Ljavax/management/relation/Role;
            9   22     5       currRoleName  Ljava/lang/String;
           10   22     6   currRefMBeanList  Ljava/util/List<Ljavax/management/ObjectName;>;
           12   21     7    currRoleObjName  Ljavax/management/ObjectName;
           14   21     9  mbeanRoleNameList  Ljava/util/List<Ljava/lang/String;>;
           15   21    10          newRefFlg  Z
      Exception table:
        from    to  target  type
           6    24      25  any
          25    26      25  any
    Signature: ()Ljava/util/Map<Ljavax/management/ObjectName;Ljava/util/List<Ljava/lang/String;>;>;

  public java.lang.String getRelationTypeName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 639
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
            areturn
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/relation/RelationSupport;

  public javax.management.ObjectName getRelationServiceName();
    descriptor: ()Ljavax/management/ObjectName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 648
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
            areturn
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/relation/RelationSupport;

  public java.lang.String getRelationId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 658
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
            areturn
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/relation/RelationSupport;

  public javax.management.ObjectName preRegister(javax.management.MBeanServer, javax.management.ObjectName);
    descriptor: (Ljavax/management/MBeanServer;Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.MBeanServer server
        start local 2 // javax.management.ObjectName name
         0: .line 675
            aload 0 /* this */
            aload 1 /* server */
            putfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
         1: .line 676
            aload 2 /* name */
            areturn
        end local 2 // javax.management.ObjectName name
        end local 1 // javax.management.MBeanServer server
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljavax/management/relation/RelationSupport;
            0    2     1  server  Ljavax/management/MBeanServer;
            0    2     2    name  Ljavax/management/ObjectName;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      server  
      name    

  public void postRegister(java.lang.Boolean);
    descriptor: (Ljava/lang/Boolean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.Boolean registrationDone
         0: .line 681
            return
        end local 1 // java.lang.Boolean registrationDone
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Ljavax/management/relation/RelationSupport;
            0    1     1  registrationDone  Ljava/lang/Boolean;
    MethodParameters:
                  Name  Flags
      registrationDone  

  public void preDeregister();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 687
            return
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/relation/RelationSupport;
    Exceptions:
      throws java.lang.Exception

  public void postDeregister();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 692
            return
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/relation/RelationSupport;

  public java.lang.Boolean isInRelationService();
    descriptor: ()Ljava/lang/Boolean;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // javax.management.relation.RelationSupport this
         0: .line 704
            aconst_null
            astore 1 /* result */
        start local 1 // java.lang.Boolean result
         1: .line 705
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myInRelServFlg:Ljava/lang/Boolean;
            dup
            astore 2
            monitorenter
         2: .line 706
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myInRelServFlg:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 1 /* result */
         3: .line 705
            aload 2
            monitorexit
         4: goto 7
      StackMap locals: javax.management.relation.RelationSupport java.lang.Boolean java.lang.Boolean
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 708
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // java.lang.Boolean result
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljavax/management/relation/RelationSupport;
            1    8     1  result  Ljava/lang/Boolean;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any

  public void setRelationServiceManagementFlag(java.lang.Boolean);
    descriptor: (Ljava/lang/Boolean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.Boolean flag
         0: .line 714
            aload 1 /* flag */
            ifnonnull 3
         1: .line 715
            ldc "Invalid parameter."
            astore 2 /* excMsg */
        start local 2 // java.lang.String excMsg
         2: .line 716
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String excMsg
         3: .line 718
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myInRelServFlg:Ljava/lang/Boolean;
            dup
            astore 2
            monitorenter
         4: .line 719
            aload 0 /* this */
            aload 1 /* flag */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            putfield javax.management.relation.RelationSupport.myInRelServFlg:Ljava/lang/Boolean;
         5: .line 718
            aload 2
            monitorexit
         6: goto 9
      StackMap locals: javax.management.relation.RelationSupport java.lang.Boolean java.lang.Boolean
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 721
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Boolean flag
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljavax/management/relation/RelationSupport;
            0   10     1    flag  Ljava/lang/Boolean;
            2    3     2  excMsg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      flag  

  java.lang.Object getRoleInt(java.lang.String, boolean, javax.management.relation.RelationService, boolean);
    descriptor: (Ljava/lang/String;ZLjavax/management/relation/RelationService;Z)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=5, locals=11, args_size=5
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String roleName
        start local 2 // boolean relationServCallFlg
        start local 3 // javax.management.relation.RelationService relationServ
        start local 4 // boolean multiRoleFlg
         0: .line 782
            aload 1 /* roleName */
            ifnull 2
         1: .line 783
            iload 2 /* relationServCallFlg */
            ifeq 4
            aload 3 /* relationServ */
            ifnonnull 4
         2: .line 784
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 5 /* excMsg */
        start local 5 // java.lang.String excMsg
         3: .line 785
            new java.lang.IllegalArgumentException
            dup
            aload 5 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String excMsg
         4: .line 788
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         5: .line 789
            ldc "getRoleInt"
            aload 1 /* roleName */
         6: .line 788
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
         7: .line 791
            iconst_0
            istore 5 /* pbType */
        start local 5 // int pbType
         8: .line 793
            aconst_null
            astore 6 /* role */
        start local 6 // javax.management.relation.Role role
         9: .line 794
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 7
            monitorenter
        10: .line 796
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            aload 1 /* roleName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 6 /* role */
        11: .line 794
            aload 7
            monitorexit
        12: goto 15
      StackMap locals: javax.management.relation.RelationSupport java.lang.String int javax.management.relation.RelationService int int javax.management.relation.Role java.util.Map
      StackMap stack: java.lang.Throwable
        13: aload 7
            monitorexit
        14: athrow
        15: .line 799
      StackMap locals:
      StackMap stack:
            aload 6 /* role */
            ifnonnull 18
        16: .line 800
            iconst_1
            istore 5 /* pbType */
        17: .line 802
            goto 48
        18: .line 804
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* status */
        start local 7 // java.lang.Integer status
        19: .line 806
            iload 2 /* relationServCallFlg */
            ifeq 26
        20: .line 812
            aload 3 /* relationServ */
            aload 1 /* roleName */
        21: .line 813
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
        22: .line 812
            invokevirtual javax.management.relation.RelationService.checkRoleReading:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Integer;
            astore 7 /* status */
        23: .line 814
            goto 47
      StackMap locals: javax.management.relation.RelationSupport java.lang.String int javax.management.relation.RelationService int int javax.management.relation.Role java.lang.Integer
      StackMap stack: javax.management.relation.RelationTypeNotFoundException
        24: astore 8 /* exc */
        start local 8 // javax.management.relation.RelationTypeNotFoundException exc
        25: .line 815
            new java.lang.RuntimeException
            dup
            aload 8 /* exc */
            invokevirtual javax.management.relation.RelationTypeNotFoundException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // javax.management.relation.RelationTypeNotFoundException exc
        26: .line 823
      StackMap locals:
      StackMap stack:
            iconst_2
            anewarray java.lang.Object
            astore 8 /* params */
        start local 8 // java.lang.Object[] params
        27: .line 824
            aload 8 /* params */
            iconst_0
            aload 1 /* roleName */
            aastore
        28: .line 825
            aload 8 /* params */
            iconst_1
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
            aastore
        29: .line 826
            iconst_2
            anewarray java.lang.String
            astore 9 /* signature */
        start local 9 // java.lang.String[] signature
        30: .line 827
            aload 9 /* signature */
            iconst_0
            ldc "java.lang.String"
            aastore
        31: .line 828
            aload 9 /* signature */
            iconst_1
            ldc "java.lang.String"
            aastore
        32: .line 837
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
        33: .line 838
            ldc "checkRoleReading"
        34: .line 839
            aload 8 /* params */
        35: .line 840
            aload 9 /* signature */
        36: .line 837
            invokeinterface javax.management.MBeanServer.invoke:(Ljavax/management/ObjectName;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
        37: .line 836
            checkcast java.lang.Integer
            astore 7 /* status */
        38: .line 841
            goto 47
      StackMap locals: javax.management.relation.RelationSupport java.lang.String int javax.management.relation.RelationService int int javax.management.relation.Role java.lang.Integer java.lang.Object[] java.lang.String[]
      StackMap stack: javax.management.MBeanException
        39: pop
        40: .line 842
            new java.lang.RuntimeException
            dup
            ldc "incorrect relation type"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        41: .line 843
      StackMap locals:
      StackMap stack: javax.management.ReflectionException
            astore 10 /* exc2 */
        start local 10 // javax.management.ReflectionException exc2
        42: .line 844
            new java.lang.RuntimeException
            dup
            aload 10 /* exc2 */
            invokevirtual javax.management.ReflectionException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 10 // javax.management.ReflectionException exc2
        43: .line 845
      StackMap locals:
      StackMap stack: javax.management.InstanceNotFoundException
            astore 10 /* exc3 */
        start local 10 // javax.management.InstanceNotFoundException exc3
        44: .line 846
            new javax.management.relation.RelationServiceNotRegisteredException
            dup
        45: .line 847
            aload 10 /* exc3 */
            invokevirtual javax.management.InstanceNotFoundException.getMessage:()Ljava/lang/String;
        46: .line 846
            invokespecial javax.management.relation.RelationServiceNotRegisteredException.<init>:(Ljava/lang/String;)V
            athrow
        end local 10 // javax.management.InstanceNotFoundException exc3
        end local 9 // java.lang.String[] signature
        end local 8 // java.lang.Object[] params
        47: .line 851
      StackMap locals:
      StackMap stack:
            aload 7 /* status */
            invokevirtual java.lang.Integer.intValue:()I
            istore 5 /* pbType */
        end local 7 // java.lang.Integer status
        48: .line 854
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* result */
        start local 7 // java.lang.Object result
        49: .line 856
            iload 5 /* pbType */
            ifne 56
        50: .line 859
            iload 4 /* multiRoleFlg */
            ifne 54
        51: .line 865
            aload 6 /* role */
            invokevirtual javax.management.relation.Role.getRoleValue:()Ljava/util/List;
            checkcast java.util.ArrayList
            invokevirtual java.util.ArrayList.clone:()Ljava/lang/Object;
        52: .line 864
            checkcast java.util.ArrayList
            astore 7 /* result */
        53: .line 867
            goto 64
        54: .line 870
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 6 /* role */
            invokevirtual javax.management.relation.Role.clone:()Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 7 /* result */
        55: .line 873
            goto 64
        56: .line 876
      StackMap locals:
      StackMap stack:
            iload 4 /* multiRoleFlg */
            ifne 63
        57: .line 880
            iload 5 /* pbType */
        58: .line 881
            aload 1 /* roleName */
        59: .line 880
            invokestatic javax.management.relation.RelationService.throwRoleProblemException:(ILjava/lang/String;)V
        60: .line 883
            aconst_null
            areturn
        61: .line 884
      StackMap locals:
      StackMap stack: javax.management.relation.InvalidRoleValueException
            astore 8 /* exc */
        start local 8 // javax.management.relation.InvalidRoleValueException exc
        62: .line 885
            new java.lang.RuntimeException
            dup
            aload 8 /* exc */
            invokevirtual javax.management.relation.InvalidRoleValueException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // javax.management.relation.InvalidRoleValueException exc
        63: .line 891
      StackMap locals:
      StackMap stack:
            new javax.management.relation.RoleUnresolved
            dup
            aload 1 /* roleName */
            aconst_null
            iload 5 /* pbType */
            invokespecial javax.management.relation.RoleUnresolved.<init>:(Ljava/lang/String;Ljava/util/List;I)V
            astore 7 /* result */
        64: .line 895
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "getRoleInt"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        65: .line 896
            aload 7 /* result */
            areturn
        end local 7 // java.lang.Object result
        end local 6 // javax.management.relation.Role role
        end local 5 // int pbType
        end local 4 // boolean multiRoleFlg
        end local 3 // javax.management.relation.RelationService relationServ
        end local 2 // boolean relationServCallFlg
        end local 1 // java.lang.String roleName
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   66     0                 this  Ljavax/management/relation/RelationSupport;
            0   66     1             roleName  Ljava/lang/String;
            0   66     2  relationServCallFlg  Z
            0   66     3         relationServ  Ljavax/management/relation/RelationService;
            0   66     4         multiRoleFlg  Z
            3    4     5               excMsg  Ljava/lang/String;
            8   66     5               pbType  I
            9   66     6                 role  Ljavax/management/relation/Role;
           19   48     7               status  Ljava/lang/Integer;
           25   26     8                  exc  Ljavax/management/relation/RelationTypeNotFoundException;
           27   47     8               params  [Ljava/lang/Object;
           30   47     9            signature  [Ljava/lang/String;
           42   43    10                 exc2  Ljavax/management/ReflectionException;
           44   47    10                 exc3  Ljavax/management/InstanceNotFoundException;
           49   66     7               result  Ljava/lang/Object;
           62   63     8                  exc  Ljavax/management/relation/InvalidRoleValueException;
      Exception table:
        from    to  target  type
          10    12      13  any
          13    14      13  any
          20    23      24  Class javax.management.relation.RelationTypeNotFoundException
          32    38      39  Class javax.management.MBeanException
          32    38      41  Class javax.management.ReflectionException
          32    38      43  Class javax.management.InstanceNotFoundException
          57    60      61  Class javax.management.relation.InvalidRoleValueException
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RoleNotFoundException, javax.management.relation.RelationServiceNotRegisteredException
    MethodParameters:
                     Name  Flags
      roleName             
      relationServCallFlg  
      relationServ         
      multiRoleFlg         

  javax.management.relation.RoleResult getRolesInt(java.lang.String[], boolean, javax.management.relation.RelationService);
    descriptor: ([Ljava/lang/String;ZLjavax/management/relation/RelationService;)Ljavax/management/relation/RoleResult;
    flags: (0x0000) 
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String[] roleNameArray
        start local 2 // boolean relationServCallFlg
        start local 3 // javax.management.relation.RelationService relationServ
         0: .line 925
            aload 1 /* roleNameArray */
            ifnull 2
         1: .line 926
            iload 2 /* relationServCallFlg */
            ifeq 4
            aload 3 /* relationServ */
            ifnonnull 4
         2: .line 927
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 4 /* excMsg */
        start local 4 // java.lang.String excMsg
         3: .line 928
            new java.lang.IllegalArgumentException
            dup
            aload 4 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.String excMsg
         4: .line 931
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         5: .line 932
            ldc "getRolesInt"
         6: .line 931
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
         7: .line 934
            new javax.management.relation.RoleList
            dup
            invokespecial javax.management.relation.RoleList.<init>:()V
            astore 4 /* roleList */
        start local 4 // javax.management.relation.RoleList roleList
         8: .line 935
            new javax.management.relation.RoleUnresolvedList
            dup
            invokespecial javax.management.relation.RoleUnresolvedList.<init>:()V
            astore 5 /* roleUnresList */
        start local 5 // javax.management.relation.RoleUnresolvedList roleUnresList
         9: .line 937
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 32
        11: .line 938
      StackMap locals: javax.management.relation.RoleList javax.management.relation.RoleUnresolvedList int
      StackMap stack:
            aload 1 /* roleNameArray */
            iload 6 /* i */
            aaload
            astore 7 /* currRoleName */
        start local 7 // java.lang.String currRoleName
        12: .line 940
            aconst_null
            astore 8 /* currResult */
        start local 8 // java.lang.Object currResult
        13: .line 946
            aload 0 /* this */
            aload 7 /* currRoleName */
        14: .line 947
            iload 2 /* relationServCallFlg */
        15: .line 948
            aload 3 /* relationServ */
        16: .line 949
            iconst_1
        17: .line 946
            invokevirtual javax.management.relation.RelationSupport.getRoleInt:(Ljava/lang/String;ZLjavax/management/relation/RelationService;Z)Ljava/lang/Object;
            astore 8 /* currResult */
        18: .line 951
            goto 21
      StackMap locals: javax.management.relation.RelationSupport java.lang.String[] int javax.management.relation.RelationService javax.management.relation.RoleList javax.management.relation.RoleUnresolvedList int java.lang.String java.lang.Object
      StackMap stack: javax.management.relation.RoleNotFoundException
        19: pop
        20: .line 952
            aconst_null
            areturn
        21: .line 955
      StackMap locals:
      StackMap stack:
            aload 8 /* currResult */
            instanceof javax.management.relation.Role
            ifeq 26
        22: .line 959
            aload 4 /* roleList */
            aload 8 /* currResult */
            checkcast javax.management.relation.Role
            invokevirtual javax.management.relation.RoleList.add:(Ljavax/management/relation/Role;)V
        23: .line 960
            goto 31
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        24: astore 9 /* exc */
        start local 9 // java.lang.IllegalArgumentException exc
        25: .line 961
            new java.lang.RuntimeException
            dup
            aload 9 /* exc */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // java.lang.IllegalArgumentException exc
        26: .line 964
      StackMap locals:
      StackMap stack:
            aload 8 /* currResult */
            instanceof javax.management.relation.RoleUnresolved
            ifeq 31
        27: .line 968
            aload 5 /* roleUnresList */
            aload 8 /* currResult */
            checkcast javax.management.relation.RoleUnresolved
            invokevirtual javax.management.relation.RoleUnresolvedList.add:(Ljavax/management/relation/RoleUnresolved;)V
        28: .line 969
            goto 31
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        29: astore 9 /* exc */
        start local 9 // java.lang.IllegalArgumentException exc
        30: .line 970
            new java.lang.RuntimeException
            dup
            aload 9 /* exc */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // java.lang.IllegalArgumentException exc
        end local 8 // java.lang.Object currResult
        end local 7 // java.lang.String currRoleName
        31: .line 937
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 6 /* i */
            aload 1 /* roleNameArray */
            arraylength
            if_icmplt 11
        end local 6 // int i
        33: .line 975
            new javax.management.relation.RoleResult
            dup
            aload 4 /* roleList */
            aload 5 /* roleUnresList */
            invokespecial javax.management.relation.RoleResult.<init>:(Ljavax/management/relation/RoleList;Ljavax/management/relation/RoleUnresolvedList;)V
            astore 6 /* result */
        start local 6 // javax.management.relation.RoleResult result
        34: .line 976
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        35: .line 977
            ldc "getRolesInt"
        36: .line 976
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        37: .line 978
            aload 6 /* result */
            areturn
        end local 6 // javax.management.relation.RoleResult result
        end local 5 // javax.management.relation.RoleUnresolvedList roleUnresList
        end local 4 // javax.management.relation.RoleList roleList
        end local 3 // javax.management.relation.RelationService relationServ
        end local 2 // boolean relationServCallFlg
        end local 1 // java.lang.String[] roleNameArray
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   38     0                 this  Ljavax/management/relation/RelationSupport;
            0   38     1        roleNameArray  [Ljava/lang/String;
            0   38     2  relationServCallFlg  Z
            0   38     3         relationServ  Ljavax/management/relation/RelationService;
            3    4     4               excMsg  Ljava/lang/String;
            8   38     4             roleList  Ljavax/management/relation/RoleList;
            9   38     5        roleUnresList  Ljavax/management/relation/RoleUnresolvedList;
           10   33     6                    i  I
           12   31     7         currRoleName  Ljava/lang/String;
           13   31     8           currResult  Ljava/lang/Object;
           25   26     9                  exc  Ljava/lang/IllegalArgumentException;
           30   31     9                  exc  Ljava/lang/IllegalArgumentException;
           34   38     6               result  Ljavax/management/relation/RoleResult;
      Exception table:
        from    to  target  type
          13    18      19  Class javax.management.relation.RoleNotFoundException
          22    23      24  Class java.lang.IllegalArgumentException
          27    28      29  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RelationServiceNotRegisteredException
    MethodParameters:
                     Name  Flags
      roleNameArray        
      relationServCallFlg  
      relationServ         

  javax.management.relation.RoleResult getAllRolesInt(boolean, javax.management.relation.RelationService);
    descriptor: (ZLjavax/management/relation/RelationService;)Ljavax/management/relation/RoleResult;
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // boolean relationServCallFlg
        start local 2 // javax.management.relation.RelationService relationServ
         0: .line 996
            iload 1 /* relationServCallFlg */
            ifeq 3
            aload 2 /* relationServ */
            ifnonnull 3
         1: .line 997
            ldc "Invalid parameter."
            astore 3 /* excMsg */
        start local 3 // java.lang.String excMsg
         2: .line 998
            new java.lang.IllegalArgumentException
            dup
            aload 3 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.String excMsg
         3: .line 1001
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 1002
            ldc "getAllRolesInt"
         5: .line 1001
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 1005
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 4
            monitorenter
         7: .line 1007
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
         8: .line 1006
            astore 3 /* roleNameList */
        start local 3 // java.util.List roleNameList
         9: .line 1005
            aload 4
            monitorexit
        10: goto 13
        end local 3 // java.util.List roleNameList
      StackMap locals: javax.management.relation.RelationSupport int javax.management.relation.RelationService top java.util.Map
      StackMap stack: java.lang.Throwable
        11: aload 4
            monitorexit
        12: athrow
        start local 3 // java.util.List roleNameList
        13: .line 1009
      StackMap locals: javax.management.relation.RelationSupport int javax.management.relation.RelationService java.util.List
      StackMap stack:
            aload 3 /* roleNameList */
            invokeinterface java.util.List.size:()I
            anewarray java.lang.String
            astore 4 /* roleNames */
        start local 4 // java.lang.String[] roleNames
        14: .line 1010
            aload 3 /* roleNameList */
            aload 4 /* roleNames */
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        15: .line 1012
            aload 0 /* this */
            aload 4 /* roleNames */
        16: .line 1013
            iload 1 /* relationServCallFlg */
        17: .line 1014
            aload 2 /* relationServ */
        18: .line 1012
            invokevirtual javax.management.relation.RelationSupport.getRolesInt:([Ljava/lang/String;ZLjavax/management/relation/RelationService;)Ljavax/management/relation/RoleResult;
            astore 5 /* result */
        start local 5 // javax.management.relation.RoleResult result
        19: .line 1016
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        20: .line 1017
            ldc "getAllRolesInt"
        21: .line 1016
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        22: .line 1018
            aload 5 /* result */
            areturn
        end local 5 // javax.management.relation.RoleResult result
        end local 4 // java.lang.String[] roleNames
        end local 3 // java.util.List roleNameList
        end local 2 // javax.management.relation.RelationService relationServ
        end local 1 // boolean relationServCallFlg
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   23     0                 this  Ljavax/management/relation/RelationSupport;
            0   23     1  relationServCallFlg  Z
            0   23     2         relationServ  Ljavax/management/relation/RelationService;
            2    3     3               excMsg  Ljava/lang/String;
            9   11     3         roleNameList  Ljava/util/List<Ljava/lang/String;>;
           13   23     3         roleNameList  Ljava/util/List<Ljava/lang/String;>;
           14   23     4            roleNames  [Ljava/lang/String;
           19   23     5               result  Ljavax/management/relation/RoleResult;
      Exception table:
        from    to  target  type
           7    10      11  any
          11    12      11  any
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RelationServiceNotRegisteredException
    MethodParameters:
                     Name  Flags
      relationServCallFlg  
      relationServ         

  java.lang.Object setRoleInt(javax.management.relation.Role, boolean, javax.management.relation.RelationService, boolean);
    descriptor: (Ljavax/management/relation/Role;ZLjavax/management/relation/RelationService;Z)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=7, locals=13, args_size=5
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.relation.Role aRole
        start local 2 // boolean relationServCallFlg
        start local 3 // javax.management.relation.RelationService relationServ
        start local 4 // boolean multiRoleFlg
         0: .line 1087
            aload 1 /* aRole */
            ifnull 2
         1: .line 1088
            iload 2 /* relationServCallFlg */
            ifeq 4
            aload 3 /* relationServ */
            ifnonnull 4
         2: .line 1089
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 5 /* excMsg */
        start local 5 // java.lang.String excMsg
         3: .line 1090
            new java.lang.IllegalArgumentException
            dup
            aload 5 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String excMsg
         4: .line 1093
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         5: .line 1094
            ldc "setRoleInt"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* aRole */
            aastore
            dup
            iconst_1
            iload 2 /* relationServCallFlg */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_2
         6: .line 1095
            aload 3 /* relationServ */
            aastore
            dup
            iconst_3
            iload 4 /* multiRoleFlg */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
         7: .line 1093
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
         8: .line 1097
            aload 1 /* aRole */
            invokevirtual javax.management.relation.Role.getRoleName:()Ljava/lang/String;
            astore 5 /* roleName */
        start local 5 // java.lang.String roleName
         9: .line 1098
            iconst_0
            istore 6 /* pbType */
        start local 6 // int pbType
        10: .line 1105
            aconst_null
            astore 7 /* role */
        start local 7 // javax.management.relation.Role role
        11: .line 1106
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 8
            monitorenter
        12: .line 1107
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            aload 5 /* roleName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 7 /* role */
        13: .line 1106
            aload 8
            monitorexit
        14: goto 17
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role int javax.management.relation.RelationService int java.lang.String int javax.management.relation.Role java.util.Map
      StackMap stack: java.lang.Throwable
        15: aload 8
            monitorexit
        16: athrow
        17: .line 1111
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 9 /* initFlg */
        start local 9 // java.lang.Boolean initFlg
        18: .line 1113
            aload 7 /* role */
            ifnonnull 22
        19: .line 1114
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 9 /* initFlg */
        20: .line 1115
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* oldRoleValue */
        start local 8 // java.util.List oldRoleValue
        21: .line 1117
            goto 24
        end local 8 // java.util.List oldRoleValue
        22: .line 1118
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role int javax.management.relation.RelationService int java.lang.String int javax.management.relation.Role top java.lang.Boolean
      StackMap stack:
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 9 /* initFlg */
        23: .line 1119
            aload 7 /* role */
            invokevirtual javax.management.relation.Role.getRoleValue:()Ljava/util/List;
            astore 8 /* oldRoleValue */
        start local 8 // java.util.List oldRoleValue
        24: .line 1125
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role int javax.management.relation.RelationService int java.lang.String int javax.management.relation.Role java.util.List java.lang.Boolean
      StackMap stack:
            aconst_null
            astore 10 /* status */
        start local 10 // java.lang.Integer status
        25: .line 1127
            iload 2 /* relationServCallFlg */
            ifeq 31
        26: .line 1133
            aload 3 /* relationServ */
            aload 1 /* aRole */
        27: .line 1134
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
        28: .line 1135
            aload 9 /* initFlg */
        29: .line 1133
            invokevirtual javax.management.relation.RelationService.checkRoleWriting:(Ljavax/management/relation/Role;Ljava/lang/String;Ljava/lang/Boolean;)Ljava/lang/Integer;
            astore 10 /* status */
        30: .line 1137
            goto 45
        31: .line 1142
      StackMap locals: java.lang.Integer
      StackMap stack:
            iconst_3
            anewarray java.lang.Object
            astore 11 /* params */
        start local 11 // java.lang.Object[] params
        32: .line 1143
            aload 11 /* params */
            iconst_0
            aload 1 /* aRole */
            aastore
        33: .line 1144
            aload 11 /* params */
            iconst_1
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
            aastore
        34: .line 1145
            aload 11 /* params */
            iconst_2
            aload 9 /* initFlg */
            aastore
        35: .line 1146
            iconst_3
            anewarray java.lang.String
            astore 12 /* signature */
        start local 12 // java.lang.String[] signature
        36: .line 1147
            aload 12 /* signature */
            iconst_0
            ldc "javax.management.relation.Role"
            aastore
        37: .line 1148
            aload 12 /* signature */
            iconst_1
            ldc "java.lang.String"
            aastore
        38: .line 1149
            aload 12 /* signature */
            iconst_2
            ldc "java.lang.Boolean"
            aastore
        39: .line 1160
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
        40: .line 1161
            ldc "checkRoleWriting"
        41: .line 1162
            aload 11 /* params */
        42: .line 1163
            aload 12 /* signature */
        43: .line 1160
            invokeinterface javax.management.MBeanServer.invoke:(Ljavax/management/ObjectName;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
        44: .line 1159
            checkcast java.lang.Integer
            astore 10 /* status */
        end local 12 // java.lang.String[] signature
        end local 11 // java.lang.Object[] params
        45: .line 1166
      StackMap locals:
      StackMap stack:
            aload 10 /* status */
            invokevirtual java.lang.Integer.intValue:()I
            istore 6 /* pbType */
        end local 10 // java.lang.Integer status
        46: .line 1168
            goto 58
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role int javax.management.relation.RelationService int java.lang.String int javax.management.relation.Role java.util.List java.lang.Boolean
      StackMap stack: javax.management.MBeanException
        47: astore 10 /* exc2 */
        start local 10 // javax.management.MBeanException exc2
        48: .line 1171
            aload 10 /* exc2 */
            invokevirtual javax.management.MBeanException.getTargetException:()Ljava/lang/Exception;
            astore 11 /* wrappedExc */
        start local 11 // java.lang.Exception wrappedExc
        49: .line 1172
            aload 11 /* wrappedExc */
            instanceof javax.management.relation.RelationTypeNotFoundException
            ifeq 51
        50: .line 1173
            aload 11 /* wrappedExc */
            checkcast javax.management.relation.RelationTypeNotFoundException
            athrow
        51: .line 1176
      StackMap locals: javax.management.MBeanException java.lang.Exception
      StackMap stack:
            new java.lang.RuntimeException
            dup
            aload 11 /* wrappedExc */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 11 // java.lang.Exception wrappedExc
        end local 10 // javax.management.MBeanException exc2
        52: .line 1179
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role int javax.management.relation.RelationService int java.lang.String int javax.management.relation.Role java.util.List java.lang.Boolean
      StackMap stack: javax.management.ReflectionException
            astore 10 /* exc3 */
        start local 10 // javax.management.ReflectionException exc3
        53: .line 1180
            new java.lang.RuntimeException
            dup
            aload 10 /* exc3 */
            invokevirtual javax.management.ReflectionException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 10 // javax.management.ReflectionException exc3
        54: .line 1182
      StackMap locals:
      StackMap stack: javax.management.relation.RelationTypeNotFoundException
            astore 10 /* exc4 */
        start local 10 // javax.management.relation.RelationTypeNotFoundException exc4
        55: .line 1183
            new java.lang.RuntimeException
            dup
            aload 10 /* exc4 */
            invokevirtual javax.management.relation.RelationTypeNotFoundException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 10 // javax.management.relation.RelationTypeNotFoundException exc4
        56: .line 1185
      StackMap locals:
      StackMap stack: javax.management.InstanceNotFoundException
            astore 10 /* exc5 */
        start local 10 // javax.management.InstanceNotFoundException exc5
        57: .line 1186
            new javax.management.relation.RelationServiceNotRegisteredException
            dup
            aload 10 /* exc5 */
            invokevirtual javax.management.InstanceNotFoundException.getMessage:()Ljava/lang/String;
            invokespecial javax.management.relation.RelationServiceNotRegisteredException.<init>:(Ljava/lang/String;)V
            athrow
        end local 10 // javax.management.InstanceNotFoundException exc5
        58: .line 1189
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 10 /* result */
        start local 10 // java.lang.Object result
        59: .line 1191
            iload 6 /* pbType */
            ifne 82
        60: .line 1193
            aload 9 /* initFlg */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 71
        61: .line 1204
            aload 0 /* this */
            aload 1 /* aRole */
        62: .line 1205
            aload 8 /* oldRoleValue */
        63: .line 1206
            iload 2 /* relationServCallFlg */
        64: .line 1207
            aload 3 /* relationServ */
        65: .line 1204
            invokevirtual javax.management.relation.RelationSupport.sendRoleUpdateNotification:(Ljavax/management/relation/Role;Ljava/util/List;ZLjavax/management/relation/RelationService;)V
        66: .line 1211
            aload 0 /* this */
            aload 1 /* aRole */
        67: .line 1212
            aload 8 /* oldRoleValue */
        68: .line 1213
            iload 2 /* relationServCallFlg */
        69: .line 1214
            aload 3 /* relationServ */
        70: .line 1211
            invokevirtual javax.management.relation.RelationSupport.updateRelationServiceMap:(Ljavax/management/relation/Role;Ljava/util/List;ZLjavax/management/relation/RelationService;)V
        71: .line 1219
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 11
            monitorenter
        72: .line 1220
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            aload 5 /* roleName */
        73: .line 1221
            aload 1 /* aRole */
            invokevirtual javax.management.relation.Role.clone:()Ljava/lang/Object;
            checkcast javax.management.relation.Role
        74: .line 1220
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        75: .line 1219
            aload 11
            monitorexit
        76: goto 79
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role int javax.management.relation.RelationService int java.lang.String int javax.management.relation.Role java.util.List java.lang.Boolean java.lang.Object java.util.Map
      StackMap stack: java.lang.Throwable
        77: aload 11
            monitorexit
        78: athrow
        79: .line 1226
      StackMap locals:
      StackMap stack:
            iload 4 /* multiRoleFlg */
            ifeq 91
        80: .line 1228
            aload 1 /* aRole */
            astore 10 /* result */
        81: .line 1231
            goto 91
        82: .line 1235
      StackMap locals:
      StackMap stack:
            iload 4 /* multiRoleFlg */
            ifne 87
        83: .line 1240
            iload 6 /* pbType */
        84: .line 1241
            aload 5 /* roleName */
        85: .line 1240
            invokestatic javax.management.relation.RelationService.throwRoleProblemException:(ILjava/lang/String;)V
        86: .line 1243
            aconst_null
            areturn
        87: .line 1248
      StackMap locals:
      StackMap stack:
            new javax.management.relation.RoleUnresolved
            dup
            aload 5 /* roleName */
        88: .line 1249
            aload 1 /* aRole */
            invokevirtual javax.management.relation.Role.getRoleValue:()Ljava/util/List;
        89: .line 1250
            iload 6 /* pbType */
        90: .line 1248
            invokespecial javax.management.relation.RoleUnresolved.<init>:(Ljava/lang/String;Ljava/util/List;I)V
            astore 10 /* result */
        91: .line 1254
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "setRoleInt"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        92: .line 1255
            aload 10 /* result */
            areturn
        end local 10 // java.lang.Object result
        end local 9 // java.lang.Boolean initFlg
        end local 8 // java.util.List oldRoleValue
        end local 7 // javax.management.relation.Role role
        end local 6 // int pbType
        end local 5 // java.lang.String roleName
        end local 4 // boolean multiRoleFlg
        end local 3 // javax.management.relation.RelationService relationServ
        end local 2 // boolean relationServCallFlg
        end local 1 // javax.management.relation.Role aRole
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   93     0                 this  Ljavax/management/relation/RelationSupport;
            0   93     1                aRole  Ljavax/management/relation/Role;
            0   93     2  relationServCallFlg  Z
            0   93     3         relationServ  Ljavax/management/relation/RelationService;
            0   93     4         multiRoleFlg  Z
            3    4     5               excMsg  Ljava/lang/String;
            9   93     5             roleName  Ljava/lang/String;
           10   93     6               pbType  I
           11   93     7                 role  Ljavax/management/relation/Role;
           21   22     8         oldRoleValue  Ljava/util/List<Ljavax/management/ObjectName;>;
           24   93     8         oldRoleValue  Ljava/util/List<Ljavax/management/ObjectName;>;
           18   93     9              initFlg  Ljava/lang/Boolean;
           25   46    10               status  Ljava/lang/Integer;
           32   45    11               params  [Ljava/lang/Object;
           36   45    12            signature  [Ljava/lang/String;
           48   52    10                 exc2  Ljavax/management/MBeanException;
           49   52    11           wrappedExc  Ljava/lang/Exception;
           53   54    10                 exc3  Ljavax/management/ReflectionException;
           55   56    10                 exc4  Ljavax/management/relation/RelationTypeNotFoundException;
           57   58    10                 exc5  Ljavax/management/InstanceNotFoundException;
           59   93    10               result  Ljava/lang/Object;
      Exception table:
        from    to  target  type
          12    14      15  any
          15    16      15  any
          24    46      47  Class javax.management.MBeanException
          24    46      52  Class javax.management.ReflectionException
          24    46      54  Class javax.management.relation.RelationTypeNotFoundException
          24    46      56  Class javax.management.InstanceNotFoundException
          72    76      77  any
          77    78      77  any
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RoleNotFoundException, javax.management.relation.InvalidRoleValueException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationTypeNotFoundException, javax.management.relation.RelationNotFoundException
    MethodParameters:
                     Name  Flags
      aRole                
      relationServCallFlg  
      relationServ         
      multiRoleFlg         

  private void sendRoleUpdateNotification(javax.management.relation.Role, java.util.List<javax.management.ObjectName>, boolean, javax.management.relation.RelationService);
    descriptor: (Ljavax/management/relation/Role;Ljava/util/List;ZLjavax/management/relation/RelationService;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.relation.Role newRole
        start local 2 // java.util.List oldRoleValue
        start local 3 // boolean relationServCallFlg
        start local 4 // javax.management.relation.RelationService relationServ
         0: .line 1289
            aload 1 /* newRole */
            ifnull 3
         1: .line 1290
            aload 2 /* oldRoleValue */
            ifnull 3
         2: .line 1291
            iload 3 /* relationServCallFlg */
            ifeq 5
            aload 4 /* relationServ */
            ifnonnull 5
         3: .line 1292
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 5 /* excMsg */
        start local 5 // java.lang.String excMsg
         4: .line 1293
            new java.lang.IllegalArgumentException
            dup
            aload 5 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String excMsg
         5: .line 1296
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         6: .line 1297
            ldc "sendRoleUpdateNotification"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* newRole */
            aastore
            dup
            iconst_1
         7: .line 1298
            aload 2 /* oldRoleValue */
            aastore
            dup
            iconst_2
            iload 3 /* relationServCallFlg */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_3
            aload 4 /* relationServ */
            aastore
         8: .line 1296
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 1300
            iload 3 /* relationServCallFlg */
            ifeq 17
        10: .line 1305
            aload 4 /* relationServ */
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
        11: .line 1306
            aload 1 /* newRole */
        12: .line 1307
            aload 2 /* oldRoleValue */
        13: .line 1305
            invokevirtual javax.management.relation.RelationService.sendRoleUpdateNotification:(Ljava/lang/String;Ljavax/management/relation/Role;Ljava/util/List;)V
        14: .line 1308
            goto 42
      StackMap locals:
      StackMap stack: javax.management.relation.RelationNotFoundException
        15: astore 5 /* exc */
        start local 5 // javax.management.relation.RelationNotFoundException exc
        16: .line 1309
            new java.lang.RuntimeException
            dup
            aload 5 /* exc */
            invokevirtual javax.management.relation.RelationNotFoundException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // javax.management.relation.RelationNotFoundException exc
        17: .line 1314
      StackMap locals:
      StackMap stack:
            iconst_3
            anewarray java.lang.Object
            astore 5 /* params */
        start local 5 // java.lang.Object[] params
        18: .line 1315
            aload 5 /* params */
            iconst_0
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
            aastore
        19: .line 1316
            aload 5 /* params */
            iconst_1
            aload 1 /* newRole */
            aastore
        20: .line 1317
            aload 5 /* params */
            iconst_2
            aload 2 /* oldRoleValue */
            checkcast java.util.ArrayList
            aastore
        21: .line 1318
            iconst_3
            anewarray java.lang.String
            astore 6 /* signature */
        start local 6 // java.lang.String[] signature
        22: .line 1319
            aload 6 /* signature */
            iconst_0
            ldc "java.lang.String"
            aastore
        23: .line 1320
            aload 6 /* signature */
            iconst_1
            ldc "javax.management.relation.Role"
            aastore
        24: .line 1321
            aload 6 /* signature */
            iconst_2
            ldc "java.util.List"
            aastore
        25: .line 1332
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
        26: .line 1333
            ldc "sendRoleUpdateNotification"
        27: .line 1334
            aload 5 /* params */
        28: .line 1335
            aload 6 /* signature */
        29: .line 1332
            invokeinterface javax.management.MBeanServer.invoke:(Ljavax/management/ObjectName;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            pop
        30: .line 1336
            goto 42
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role java.util.List int javax.management.relation.RelationService java.lang.Object[] java.lang.String[]
      StackMap stack: javax.management.ReflectionException
        31: astore 7 /* exc1 */
        start local 7 // javax.management.ReflectionException exc1
        32: .line 1337
            new java.lang.RuntimeException
            dup
            aload 7 /* exc1 */
            invokevirtual javax.management.ReflectionException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // javax.management.ReflectionException exc1
        33: .line 1338
      StackMap locals:
      StackMap stack: javax.management.InstanceNotFoundException
            astore 7 /* exc2 */
        start local 7 // javax.management.InstanceNotFoundException exc2
        34: .line 1339
            new javax.management.relation.RelationServiceNotRegisteredException
            dup
        35: .line 1340
            aload 7 /* exc2 */
            invokevirtual javax.management.InstanceNotFoundException.getMessage:()Ljava/lang/String;
        36: .line 1339
            invokespecial javax.management.relation.RelationServiceNotRegisteredException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // javax.management.InstanceNotFoundException exc2
        37: .line 1341
      StackMap locals:
      StackMap stack: javax.management.MBeanException
            astore 7 /* exc3 */
        start local 7 // javax.management.MBeanException exc3
        38: .line 1342
            aload 7 /* exc3 */
            invokevirtual javax.management.MBeanException.getTargetException:()Ljava/lang/Exception;
            astore 8 /* wrappedExc */
        start local 8 // java.lang.Exception wrappedExc
        39: .line 1343
            aload 8 /* wrappedExc */
            instanceof javax.management.relation.RelationNotFoundException
            ifeq 41
        40: .line 1344
            aload 8 /* wrappedExc */
            checkcast javax.management.relation.RelationNotFoundException
            athrow
        41: .line 1346
      StackMap locals: javax.management.MBeanException java.lang.Exception
      StackMap stack:
            new java.lang.RuntimeException
            dup
            aload 8 /* wrappedExc */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.Exception wrappedExc
        end local 7 // javax.management.MBeanException exc3
        end local 6 // java.lang.String[] signature
        end local 5 // java.lang.Object[] params
        42: .line 1351
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role java.util.List int javax.management.relation.RelationService
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        43: .line 1352
            ldc "sendRoleUpdateNotification"
        44: .line 1351
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        45: .line 1353
            return
        end local 4 // javax.management.relation.RelationService relationServ
        end local 3 // boolean relationServCallFlg
        end local 2 // java.util.List oldRoleValue
        end local 1 // javax.management.relation.Role newRole
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   46     0                 this  Ljavax/management/relation/RelationSupport;
            0   46     1              newRole  Ljavax/management/relation/Role;
            0   46     2         oldRoleValue  Ljava/util/List<Ljavax/management/ObjectName;>;
            0   46     3  relationServCallFlg  Z
            0   46     4         relationServ  Ljavax/management/relation/RelationService;
            4    5     5               excMsg  Ljava/lang/String;
           16   17     5                  exc  Ljavax/management/relation/RelationNotFoundException;
           18   42     5               params  [Ljava/lang/Object;
           22   42     6            signature  [Ljava/lang/String;
           32   33     7                 exc1  Ljavax/management/ReflectionException;
           34   37     7                 exc2  Ljavax/management/InstanceNotFoundException;
           38   42     7                 exc3  Ljavax/management/MBeanException;
           39   42     8           wrappedExc  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          10    14      15  Class javax.management.relation.RelationNotFoundException
          25    30      31  Class javax.management.ReflectionException
          25    30      33  Class javax.management.InstanceNotFoundException
          25    30      37  Class javax.management.MBeanException
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationNotFoundException
    Signature: (Ljavax/management/relation/Role;Ljava/util/List<Ljavax/management/ObjectName;>;ZLjavax/management/relation/RelationService;)V
    MethodParameters:
                     Name  Flags
      newRole              
      oldRoleValue         
      relationServCallFlg  
      relationServ         

  private void updateRelationServiceMap(javax.management.relation.Role, java.util.List<javax.management.ObjectName>, boolean, javax.management.relation.RelationService);
    descriptor: (Ljavax/management/relation/Role;Ljava/util/List;ZLjavax/management/relation/RelationService;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.relation.Role newRole
        start local 2 // java.util.List oldRoleValue
        start local 3 // boolean relationServCallFlg
        start local 4 // javax.management.relation.RelationService relationServ
         0: .line 1386
            aload 1 /* newRole */
            ifnull 3
         1: .line 1387
            aload 2 /* oldRoleValue */
            ifnull 3
         2: .line 1388
            iload 3 /* relationServCallFlg */
            ifeq 5
            aload 4 /* relationServ */
            ifnonnull 5
         3: .line 1389
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 5 /* excMsg */
        start local 5 // java.lang.String excMsg
         4: .line 1390
            new java.lang.IllegalArgumentException
            dup
            aload 5 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String excMsg
         5: .line 1393
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         6: .line 1394
            ldc "updateRelationServiceMap"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* newRole */
            aastore
            dup
            iconst_1
         7: .line 1395
            aload 2 /* oldRoleValue */
            aastore
            dup
            iconst_2
            iload 3 /* relationServCallFlg */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_3
            aload 4 /* relationServ */
            aastore
         8: .line 1393
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 1397
            iload 3 /* relationServCallFlg */
            ifeq 17
        10: .line 1401
            aload 4 /* relationServ */
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
        11: .line 1402
            aload 1 /* newRole */
        12: .line 1403
            aload 2 /* oldRoleValue */
        13: .line 1401
            invokevirtual javax.management.relation.RelationService.updateRoleMap:(Ljava/lang/String;Ljavax/management/relation/Role;Ljava/util/List;)V
        14: .line 1404
            goto 41
      StackMap locals:
      StackMap stack: javax.management.relation.RelationNotFoundException
        15: astore 5 /* exc */
        start local 5 // javax.management.relation.RelationNotFoundException exc
        16: .line 1405
            new java.lang.RuntimeException
            dup
            aload 5 /* exc */
            invokevirtual javax.management.relation.RelationNotFoundException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // javax.management.relation.RelationNotFoundException exc
        17: .line 1409
      StackMap locals:
      StackMap stack:
            iconst_3
            anewarray java.lang.Object
            astore 5 /* params */
        start local 5 // java.lang.Object[] params
        18: .line 1410
            aload 5 /* params */
            iconst_0
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
            aastore
        19: .line 1411
            aload 5 /* params */
            iconst_1
            aload 1 /* newRole */
            aastore
        20: .line 1412
            aload 5 /* params */
            iconst_2
            aload 2 /* oldRoleValue */
            aastore
        21: .line 1413
            iconst_3
            anewarray java.lang.String
            astore 6 /* signature */
        start local 6 // java.lang.String[] signature
        22: .line 1414
            aload 6 /* signature */
            iconst_0
            ldc "java.lang.String"
            aastore
        23: .line 1415
            aload 6 /* signature */
            iconst_1
            ldc "javax.management.relation.Role"
            aastore
        24: .line 1416
            aload 6 /* signature */
            iconst_2
            ldc "java.util.List"
            aastore
        25: .line 1424
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
        26: .line 1425
            ldc "updateRoleMap"
        27: .line 1426
            aload 5 /* params */
        28: .line 1427
            aload 6 /* signature */
        29: .line 1424
            invokeinterface javax.management.MBeanServer.invoke:(Ljavax/management/ObjectName;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            pop
        30: .line 1428
            goto 41
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role java.util.List int javax.management.relation.RelationService java.lang.Object[] java.lang.String[]
      StackMap stack: javax.management.ReflectionException
        31: astore 7 /* exc1 */
        start local 7 // javax.management.ReflectionException exc1
        32: .line 1429
            new java.lang.RuntimeException
            dup
            aload 7 /* exc1 */
            invokevirtual javax.management.ReflectionException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // javax.management.ReflectionException exc1
        33: .line 1430
      StackMap locals:
      StackMap stack: javax.management.InstanceNotFoundException
            astore 7 /* exc2 */
        start local 7 // javax.management.InstanceNotFoundException exc2
        34: .line 1432
            new javax.management.relation.RelationServiceNotRegisteredException
            dup
            aload 7 /* exc2 */
            invokevirtual javax.management.InstanceNotFoundException.getMessage:()Ljava/lang/String;
        35: .line 1431
            invokespecial javax.management.relation.RelationServiceNotRegisteredException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // javax.management.InstanceNotFoundException exc2
        36: .line 1433
      StackMap locals:
      StackMap stack: javax.management.MBeanException
            astore 7 /* exc3 */
        start local 7 // javax.management.MBeanException exc3
        37: .line 1434
            aload 7 /* exc3 */
            invokevirtual javax.management.MBeanException.getTargetException:()Ljava/lang/Exception;
            astore 8 /* wrappedExc */
        start local 8 // java.lang.Exception wrappedExc
        38: .line 1435
            aload 8 /* wrappedExc */
            instanceof javax.management.relation.RelationNotFoundException
            ifeq 40
        39: .line 1436
            aload 8 /* wrappedExc */
            checkcast javax.management.relation.RelationNotFoundException
            athrow
        40: .line 1438
      StackMap locals: javax.management.MBeanException java.lang.Exception
      StackMap stack:
            new java.lang.RuntimeException
            dup
            aload 8 /* wrappedExc */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.Exception wrappedExc
        end local 7 // javax.management.MBeanException exc3
        end local 6 // java.lang.String[] signature
        end local 5 // java.lang.Object[] params
        41: .line 1443
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.Role java.util.List int javax.management.relation.RelationService
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        42: .line 1444
            ldc "updateRelationServiceMap"
        43: .line 1443
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        44: .line 1445
            return
        end local 4 // javax.management.relation.RelationService relationServ
        end local 3 // boolean relationServCallFlg
        end local 2 // java.util.List oldRoleValue
        end local 1 // javax.management.relation.Role newRole
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   45     0                 this  Ljavax/management/relation/RelationSupport;
            0   45     1              newRole  Ljavax/management/relation/Role;
            0   45     2         oldRoleValue  Ljava/util/List<Ljavax/management/ObjectName;>;
            0   45     3  relationServCallFlg  Z
            0   45     4         relationServ  Ljavax/management/relation/RelationService;
            4    5     5               excMsg  Ljava/lang/String;
           16   17     5                  exc  Ljavax/management/relation/RelationNotFoundException;
           18   41     5               params  [Ljava/lang/Object;
           22   41     6            signature  [Ljava/lang/String;
           32   33     7                 exc1  Ljavax/management/ReflectionException;
           34   36     7                 exc2  Ljavax/management/InstanceNotFoundException;
           37   41     7                 exc3  Ljavax/management/MBeanException;
           38   41     8           wrappedExc  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          10    14      15  Class javax.management.relation.RelationNotFoundException
          25    30      31  Class javax.management.ReflectionException
          25    30      33  Class javax.management.InstanceNotFoundException
          25    30      36  Class javax.management.MBeanException
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationNotFoundException
    Signature: (Ljavax/management/relation/Role;Ljava/util/List<Ljavax/management/ObjectName;>;ZLjavax/management/relation/RelationService;)V
    MethodParameters:
                     Name  Flags
      newRole              
      oldRoleValue         
      relationServCallFlg  
      relationServ         

  javax.management.relation.RoleResult setRolesInt(javax.management.relation.RoleList, boolean, javax.management.relation.RelationService);
    descriptor: (Ljavax/management/relation/RoleList;ZLjavax/management/relation/RelationService;)Ljavax/management/relation/RoleResult;
    flags: (0x0000) 
    Code:
      stack=7, locals=10, args_size=4
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.relation.RoleList list
        start local 2 // boolean relationServCallFlg
        start local 3 // javax.management.relation.RelationService relationServ
         0: .line 1488
            aload 1 /* list */
            ifnull 2
         1: .line 1489
            iload 2 /* relationServCallFlg */
            ifeq 4
            aload 3 /* relationServ */
            ifnonnull 4
         2: .line 1490
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 4 /* excMsg */
        start local 4 // java.lang.String excMsg
         3: .line 1491
            new java.lang.IllegalArgumentException
            dup
            aload 4 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.String excMsg
         4: .line 1494
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         5: .line 1495
            ldc "setRolesInt"
         6: .line 1496
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* list */
            aastore
            dup
            iconst_1
            iload 2 /* relationServCallFlg */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_2
            aload 3 /* relationServ */
            aastore
         7: .line 1494
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
         8: .line 1498
            new javax.management.relation.RoleList
            dup
            invokespecial javax.management.relation.RoleList.<init>:()V
            astore 4 /* roleList */
        start local 4 // javax.management.relation.RoleList roleList
         9: .line 1499
            new javax.management.relation.RoleUnresolvedList
            dup
            invokespecial javax.management.relation.RoleUnresolvedList.<init>:()V
            astore 5 /* roleUnresList */
        start local 5 // javax.management.relation.RoleUnresolvedList roleUnresList
        10: .line 1501
            aload 1 /* list */
            invokevirtual javax.management.relation.RoleList.iterator:()Ljava/util/Iterator;
            astore 6 /* roleIter */
        start local 6 // java.util.Iterator roleIter
        11: .line 1502
            goto 32
        12: .line 1504
      StackMap locals: javax.management.relation.RoleList javax.management.relation.RoleUnresolvedList java.util.Iterator
      StackMap stack:
            aload 6 /* roleIter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 7 /* currRole */
        start local 7 // javax.management.relation.Role currRole
        13: .line 1506
            aconst_null
            astore 8 /* currResult */
        start local 8 // java.lang.Object currResult
        14: .line 1515
            aload 0 /* this */
            aload 7 /* currRole */
        15: .line 1516
            iload 2 /* relationServCallFlg */
        16: .line 1517
            aload 3 /* relationServ */
        17: .line 1518
            iconst_1
        18: .line 1515
            invokevirtual javax.management.relation.RelationSupport.setRoleInt:(Ljavax/management/relation/Role;ZLjavax/management/relation/RelationService;Z)Ljava/lang/Object;
            astore 8 /* currResult */
        19: .line 1519
            goto 22
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.RoleList int javax.management.relation.RelationService javax.management.relation.RoleList javax.management.relation.RoleUnresolvedList java.util.Iterator javax.management.relation.Role java.lang.Object
      StackMap stack: javax.management.relation.RoleNotFoundException
        20: pop
            goto 22
        21: .line 1521
      StackMap locals:
      StackMap stack: javax.management.relation.InvalidRoleValueException
            pop
        22: .line 1525
      StackMap locals:
      StackMap stack:
            aload 8 /* currResult */
            instanceof javax.management.relation.Role
            ifeq 27
        23: .line 1529
            aload 4 /* roleList */
            aload 8 /* currResult */
            checkcast javax.management.relation.Role
            invokevirtual javax.management.relation.RoleList.add:(Ljavax/management/relation/Role;)V
        24: .line 1530
            goto 32
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        25: astore 9 /* exc */
        start local 9 // java.lang.IllegalArgumentException exc
        26: .line 1531
            new java.lang.RuntimeException
            dup
            aload 9 /* exc */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // java.lang.IllegalArgumentException exc
        27: .line 1534
      StackMap locals:
      StackMap stack:
            aload 8 /* currResult */
            instanceof javax.management.relation.RoleUnresolved
            ifeq 32
        28: .line 1538
            aload 5 /* roleUnresList */
            aload 8 /* currResult */
            checkcast javax.management.relation.RoleUnresolved
            invokevirtual javax.management.relation.RoleUnresolvedList.add:(Ljavax/management/relation/RoleUnresolved;)V
        29: .line 1539
            goto 32
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        30: astore 9 /* exc */
        start local 9 // java.lang.IllegalArgumentException exc
        31: .line 1540
            new java.lang.RuntimeException
            dup
            aload 9 /* exc */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // java.lang.IllegalArgumentException exc
        end local 8 // java.lang.Object currResult
        end local 7 // javax.management.relation.Role currRole
        32: .line 1502
      StackMap locals:
      StackMap stack:
            aload 6 /* roleIter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        end local 6 // java.util.Iterator roleIter
        33: .line 1545
            new javax.management.relation.RoleResult
            dup
            aload 4 /* roleList */
            aload 5 /* roleUnresList */
            invokespecial javax.management.relation.RoleResult.<init>:(Ljavax/management/relation/RoleList;Ljavax/management/relation/RoleUnresolvedList;)V
            astore 6 /* result */
        start local 6 // javax.management.relation.RoleResult result
        34: .line 1547
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "setRolesInt"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        35: .line 1548
            aload 6 /* result */
            areturn
        end local 6 // javax.management.relation.RoleResult result
        end local 5 // javax.management.relation.RoleUnresolvedList roleUnresList
        end local 4 // javax.management.relation.RoleList roleList
        end local 3 // javax.management.relation.RelationService relationServ
        end local 2 // boolean relationServCallFlg
        end local 1 // javax.management.relation.RoleList list
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   36     0                 this  Ljavax/management/relation/RelationSupport;
            0   36     1                 list  Ljavax/management/relation/RoleList;
            0   36     2  relationServCallFlg  Z
            0   36     3         relationServ  Ljavax/management/relation/RelationService;
            3    4     4               excMsg  Ljava/lang/String;
            9   36     4             roleList  Ljavax/management/relation/RoleList;
           10   36     5        roleUnresList  Ljavax/management/relation/RoleUnresolvedList;
           11   33     6             roleIter  Ljava/util/Iterator;
           13   32     7             currRole  Ljavax/management/relation/Role;
           14   32     8           currResult  Ljava/lang/Object;
           26   27     9                  exc  Ljava/lang/IllegalArgumentException;
           31   32     9                  exc  Ljava/lang/IllegalArgumentException;
           34   36     6               result  Ljavax/management/relation/RoleResult;
      Exception table:
        from    to  target  type
          14    19      20  Class javax.management.relation.RoleNotFoundException
          14    19      21  Class javax.management.relation.InvalidRoleValueException
          23    24      25  Class java.lang.IllegalArgumentException
          28    29      30  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationTypeNotFoundException, javax.management.relation.RelationNotFoundException
    MethodParameters:
                     Name  Flags
      list                 
      relationServCallFlg  
      relationServ         

  private void initMembers(java.lang.String, javax.management.ObjectName, javax.management.MBeanServer, java.lang.String, javax.management.relation.RoleList);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/MBeanServer;Ljava/lang/String;Ljavax/management/relation/RoleList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=6
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // java.lang.String relationId
        start local 2 // javax.management.ObjectName relationServiceName
        start local 3 // javax.management.MBeanServer relationServiceMBeanServer
        start local 4 // java.lang.String relationTypeName
        start local 5 // javax.management.relation.RoleList list
         0: .line 1584
            aload 1 /* relationId */
            ifnull 3
         1: .line 1585
            aload 2 /* relationServiceName */
            ifnull 3
         2: .line 1586
            aload 4 /* relationTypeName */
            ifnonnull 5
         3: .line 1587
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 6 /* excMsg */
        start local 6 // java.lang.String excMsg
         4: .line 1588
            new java.lang.IllegalArgumentException
            dup
            aload 6 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String excMsg
         5: .line 1591
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         6: .line 1592
            ldc "initMembers"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* relationId */
            aastore
            dup
            iconst_1
            aload 2 /* relationServiceName */
            aastore
            dup
            iconst_2
         7: .line 1593
            aload 3 /* relationServiceMBeanServer */
            aastore
            dup
            iconst_3
            aload 4 /* relationTypeName */
            aastore
            dup
            iconst_4
            aload 5 /* list */
            aastore
         8: .line 1591
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 1595
            aload 0 /* this */
            aload 1 /* relationId */
            putfield javax.management.relation.RelationSupport.myRelId:Ljava/lang/String;
        10: .line 1596
            aload 0 /* this */
            aload 2 /* relationServiceName */
            putfield javax.management.relation.RelationSupport.myRelServiceName:Ljavax/management/ObjectName;
        11: .line 1597
            aload 0 /* this */
            aload 3 /* relationServiceMBeanServer */
            putfield javax.management.relation.RelationSupport.myRelServiceMBeanServer:Ljavax/management/MBeanServer;
        12: .line 1598
            aload 0 /* this */
            aload 4 /* relationTypeName */
            putfield javax.management.relation.RelationSupport.myRelTypeName:Ljava/lang/String;
        13: .line 1600
            aload 0 /* this */
            aload 5 /* list */
            invokevirtual javax.management.relation.RelationSupport.initRoleMap:(Ljavax/management/relation/RoleList;)V
        14: .line 1601
            aload 0 /* this */
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            putfield javax.management.relation.RelationSupport.myInRelServFlg:Ljava/lang/Boolean;
        15: .line 1603
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "initMembers"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        16: .line 1604
            return
        end local 5 // javax.management.relation.RoleList list
        end local 4 // java.lang.String relationTypeName
        end local 3 // javax.management.MBeanServer relationServiceMBeanServer
        end local 2 // javax.management.ObjectName relationServiceName
        end local 1 // java.lang.String relationId
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   17     0                        this  Ljavax/management/relation/RelationSupport;
            0   17     1                  relationId  Ljava/lang/String;
            0   17     2         relationServiceName  Ljavax/management/ObjectName;
            0   17     3  relationServiceMBeanServer  Ljavax/management/MBeanServer;
            0   17     4            relationTypeName  Ljava/lang/String;
            0   17     5                        list  Ljavax/management/relation/RoleList;
            4    5     6                      excMsg  Ljava/lang/String;
    Exceptions:
      throws javax.management.relation.InvalidRoleValueException, java.lang.IllegalArgumentException
    MethodParameters:
                            Name  Flags
      relationId                  
      relationServiceName         
      relationServiceMBeanServer  
      relationTypeName            
      list                        

  private void initRoleMap(javax.management.relation.RoleList);
    descriptor: (Ljavax/management/relation/RoleList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.relation.RoleList list
         0: .line 1618
            aload 1 /* list */
            ifnonnull 2
         1: .line 1619
            return
         2: .line 1622
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         3: .line 1623
            ldc "initRoleMap"
            aload 1 /* list */
         4: .line 1622
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 1625
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 2
            monitorenter
         6: .line 1627
            aload 1 /* list */
            invokevirtual javax.management.relation.RoleList.iterator:()Ljava/util/Iterator;
            astore 3 /* roleIter */
        start local 3 // java.util.Iterator roleIter
         7: .line 1628
            goto 18
         8: .line 1632
      StackMap locals: java.util.Map java.util.Iterator
      StackMap stack:
            aload 3 /* roleIter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 4 /* currRole */
        start local 4 // javax.management.relation.Role currRole
         9: .line 1633
            aload 4 /* currRole */
            invokevirtual javax.management.relation.Role.getRoleName:()Ljava/lang/String;
            astore 5 /* currRoleName */
        start local 5 // java.lang.String currRoleName
        10: .line 1635
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            aload 5 /* currRoleName */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 15
        11: .line 1637
            new java.lang.StringBuilder
            dup
            ldc "Role name "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 6 /* excMsgStrB */
        start local 6 // java.lang.StringBuilder excMsgStrB
        12: .line 1638
            aload 6 /* excMsgStrB */
            aload 5 /* currRoleName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 1639
            aload 6 /* excMsgStrB */
            ldc " used for two roles."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 1640
            new javax.management.relation.InvalidRoleValueException
            dup
            aload 6 /* excMsgStrB */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.management.relation.InvalidRoleValueException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.StringBuilder excMsgStrB
        15: .line 1643
      StackMap locals: javax.management.relation.Role java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            aload 5 /* currRoleName */
        16: .line 1644
            aload 4 /* currRole */
            invokevirtual javax.management.relation.Role.clone:()Ljava/lang/Object;
            checkcast javax.management.relation.Role
        17: .line 1643
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.lang.String currRoleName
        end local 4 // javax.management.relation.Role currRole
        18: .line 1628
      StackMap locals:
      StackMap stack:
            aload 3 /* roleIter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 3 // java.util.Iterator roleIter
        19: .line 1625
            aload 2
            monitorexit
        20: goto 23
      StackMap locals: javax.management.relation.RelationSupport javax.management.relation.RoleList java.util.Map
      StackMap stack: java.lang.Throwable
        21: aload 2
            monitorexit
        22: athrow
        23: .line 1648
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "initRoleMap"
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        24: .line 1649
            return
        end local 1 // javax.management.relation.RoleList list
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   25     0          this  Ljavax/management/relation/RelationSupport;
            0   25     1          list  Ljavax/management/relation/RoleList;
            7   19     3      roleIter  Ljava/util/Iterator;
            9   18     4      currRole  Ljavax/management/relation/Role;
           10   18     5  currRoleName  Ljava/lang/String;
           12   15     6    excMsgStrB  Ljava/lang/StringBuilder;
      Exception table:
        from    to  target  type
           6    20      21  any
          21    22      21  any
    Exceptions:
      throws javax.management.relation.InvalidRoleValueException
    MethodParameters:
      Name  Flags
      list  

  void handleMBeanUnregistrationInt(javax.management.ObjectName, java.lang.String, boolean, javax.management.relation.RelationService);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;ZLjavax/management/relation/RelationService;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=9, args_size=5
        start local 0 // javax.management.relation.RelationSupport this
        start local 1 // javax.management.ObjectName objectName
        start local 2 // java.lang.String roleName
        start local 3 // boolean relationServCallFlg
        start local 4 // javax.management.relation.RelationService relationServ
         0: .line 1701
            aload 1 /* objectName */
            ifnull 3
         1: .line 1702
            aload 2 /* roleName */
            ifnull 3
         2: .line 1703
            iload 3 /* relationServCallFlg */
            ifeq 5
            aload 4 /* relationServ */
            ifnonnull 5
         3: .line 1704
      StackMap locals:
      StackMap stack:
            ldc "Invalid parameter."
            astore 5 /* excMsg */
        start local 5 // java.lang.String excMsg
         4: .line 1705
            new java.lang.IllegalArgumentException
            dup
            aload 5 /* excMsg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String excMsg
         5: .line 1708
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         6: .line 1709
            ldc "handleMBeanUnregistrationInt"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* objectName */
            aastore
            dup
            iconst_1
         7: .line 1710
            aload 2 /* roleName */
            aastore
            dup
            iconst_2
            iload 3 /* relationServCallFlg */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_3
            aload 4 /* relationServ */
            aastore
         8: .line 1708
            invokevirtual java.util.logging.Logger.entering:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 1713
            aconst_null
            astore 5 /* role */
        start local 5 // javax.management.relation.Role role
        10: .line 1714
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            dup
            astore 6
            monitorenter
        11: .line 1715
            aload 0 /* this */
            getfield javax.management.relation.RelationSupport.myRoleName2ValueMap:Ljava/util/Map;
            aload 2 /* roleName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.management.relation.Role
            astore 5 /* role */
        12: .line 1714
            aload 6
            monitorexit
        13: goto 16
      StackMap locals: javax.management.relation.RelationSupport javax.management.ObjectName java.lang.String int javax.management.relation.RelationService javax.management.relation.Role java.util.Map
      StackMap stack: java.lang.Throwable
        14: aload 6
            monitorexit
        15: athrow
        16: .line 1718
      StackMap locals:
      StackMap stack:
            aload 5 /* role */
            ifnonnull 22
        17: .line 1719
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 6 /* excMsgStrB */
        start local 6 // java.lang.StringBuilder excMsgStrB
        18: .line 1720
            ldc "No role with name "
            astore 7 /* excMsg */
        start local 7 // java.lang.String excMsg
        19: .line 1721
            aload 6 /* excMsgStrB */
            aload 7 /* excMsg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 1722
            aload 6 /* excMsgStrB */
            aload 2 /* roleName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 1723
            new javax.management.relation.RoleNotFoundException
            dup
            aload 6 /* excMsgStrB */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.management.relation.RoleNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // java.lang.String excMsg
        end local 6 // java.lang.StringBuilder excMsgStrB
        22: .line 1725
      StackMap locals:
      StackMap stack:
            aload 5 /* role */
            invokevirtual javax.management.relation.Role.getRoleValue:()Ljava/util/List;
            astore 6 /* currRoleValue */
        start local 6 // java.util.List currRoleValue
        23: .line 1729
            new java.util.ArrayList
            dup
            aload 6 /* currRoleValue */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 7 /* newRoleValue */
        start local 7 // java.util.List newRoleValue
        24: .line 1730
            aload 7 /* newRoleValue */
            aload 1 /* objectName */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        25: .line 1731
            new javax.management.relation.Role
            dup
            aload 2 /* roleName */
            aload 7 /* newRoleValue */
            invokespecial javax.management.relation.Role.<init>:(Ljava/lang/String;Ljava/util/List;)V
            astore 8 /* newRole */
        start local 8 // javax.management.relation.Role newRole
        26: .line 1737
            aload 0 /* this */
            aload 8 /* newRole */
            iload 3 /* relationServCallFlg */
            aload 4 /* relationServ */
            iconst_0
            invokevirtual javax.management.relation.RelationSupport.setRoleInt:(Ljavax/management/relation/Role;ZLjavax/management/relation/RelationService;Z)Ljava/lang/Object;
            pop
        27: .line 1739
            getstatic com.sun.jmx.defaults.JmxProperties.RELATION_LOGGER:Ljava/util/logging/Logger;
            ldc Ljavax/management/relation/RelationSupport;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        28: .line 1740
            ldc "handleMBeanUnregistrationInt"
        29: .line 1739
            invokevirtual java.util.logging.Logger.exiting:(Ljava/lang/String;Ljava/lang/String;)V
        30: .line 1741
            return
        end local 8 // javax.management.relation.Role newRole
        end local 7 // java.util.List newRoleValue
        end local 6 // java.util.List currRoleValue
        end local 5 // javax.management.relation.Role role
        end local 4 // javax.management.relation.RelationService relationServ
        end local 3 // boolean relationServCallFlg
        end local 2 // java.lang.String roleName
        end local 1 // javax.management.ObjectName objectName
        end local 0 // javax.management.relation.RelationSupport this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   31     0                 this  Ljavax/management/relation/RelationSupport;
            0   31     1           objectName  Ljavax/management/ObjectName;
            0   31     2             roleName  Ljava/lang/String;
            0   31     3  relationServCallFlg  Z
            0   31     4         relationServ  Ljavax/management/relation/RelationService;
            4    5     5               excMsg  Ljava/lang/String;
           10   31     5                 role  Ljavax/management/relation/Role;
           18   22     6           excMsgStrB  Ljava/lang/StringBuilder;
           19   22     7               excMsg  Ljava/lang/String;
           23   31     6        currRoleValue  Ljava/util/List<Ljavax/management/ObjectName;>;
           24   31     7         newRoleValue  Ljava/util/List<Ljavax/management/ObjectName;>;
           26   31     8              newRole  Ljavax/management/relation/Role;
      Exception table:
        from    to  target  type
          11    13      14  any
          14    15      14  any
    Exceptions:
      throws java.lang.IllegalArgumentException, javax.management.relation.RoleNotFoundException, javax.management.relation.InvalidRoleValueException, javax.management.relation.RelationServiceNotRegisteredException, javax.management.relation.RelationTypeNotFoundException, javax.management.relation.RelationNotFoundException
    MethodParameters:
                     Name  Flags
      objectName           
      roleName             
      relationServCallFlg  
      relationServ         
}
SourceFile: "RelationSupport.java"