public class javax.management.StandardEmitterMBean extends javax.management.StandardMBean implements javax.management.NotificationEmitter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.management.StandardEmitterMBean
  super_class: javax.management.StandardMBean
{
  private static final javax.management.MBeanNotificationInfo[] NO_NOTIFICATION_INFO;
    descriptor: [Ljavax/management/MBeanNotificationInfo;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final javax.management.NotificationEmitter emitter;
    descriptor: Ljavax/management/NotificationEmitter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.management.MBeanNotificationInfo[] notificationInfo;
    descriptor: [Ljavax/management/MBeanNotificationInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 68
            iconst_0
            anewarray javax.management.MBeanNotificationInfo
         1: .line 67
            putstatic javax.management.StandardEmitterMBean.NO_NOTIFICATION_INFO:[Ljavax/management/MBeanNotificationInfo;
         2: .line 68
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public <T> void <init>(T, java.lang.Class<T>, javax.management.NotificationEmitter);
    descriptor: (Ljava/lang/Object;Ljava/lang/Class;Ljavax/management/NotificationEmitter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // java.lang.Object implementation
        start local 2 // java.lang.Class mbeanInterface
        start local 3 // javax.management.NotificationEmitter emitter
         0: .line 106
            aload 0 /* this */
            aload 1 /* implementation */
            aload 2 /* mbeanInterface */
            iconst_0
            aload 3 /* emitter */
            invokespecial javax.management.StandardEmitterMBean.<init>:(Ljava/lang/Object;Ljava/lang/Class;ZLjavax/management/NotificationEmitter;)V
         1: .line 107
            return
        end local 3 // javax.management.NotificationEmitter emitter
        end local 2 // java.lang.Class mbeanInterface
        end local 1 // java.lang.Object implementation
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Ljavax/management/StandardEmitterMBean;
            0    2     1  implementation  TT;
            0    2     2  mbeanInterface  Ljava/lang/Class<TT;>;
            0    2     3         emitter  Ljavax/management/NotificationEmitter;
    Signature: <T:Ljava/lang/Object;>(TT;Ljava/lang/Class<TT;>;Ljavax/management/NotificationEmitter;)V
    MethodParameters:
                Name  Flags
      implementation  
      mbeanInterface  
      emitter         

  public <T> void <init>(T, java.lang.Class<T>, boolean, javax.management.NotificationEmitter);
    descriptor: (Ljava/lang/Object;Ljava/lang/Class;ZLjavax/management/NotificationEmitter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // java.lang.Object implementation
        start local 2 // java.lang.Class mbeanInterface
        start local 3 // boolean isMXBean
        start local 4 // javax.management.NotificationEmitter emitter
         0: .line 148
            aload 0 /* this */
            aload 1 /* implementation */
            aload 2 /* mbeanInterface */
            iload 3 /* isMXBean */
            invokespecial javax.management.StandardMBean.<init>:(Ljava/lang/Object;Ljava/lang/Class;Z)V
         1: .line 149
            aload 4 /* emitter */
            ifnonnull 3
         2: .line 150
            new java.lang.IllegalArgumentException
            dup
            ldc "Null emitter"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 151
      StackMap locals: javax.management.StandardEmitterMBean java.lang.Object java.lang.Class int javax.management.NotificationEmitter
      StackMap stack:
            aload 0 /* this */
            aload 4 /* emitter */
            putfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
         4: .line 152
            aload 4 /* emitter */
            invokeinterface javax.management.NotificationEmitter.getNotificationInfo:()[Ljavax/management/MBeanNotificationInfo;
            astore 5 /* infos */
        start local 5 // javax.management.MBeanNotificationInfo[] infos
         5: .line 153
            aload 5 /* infos */
            ifnull 6
            aload 5 /* infos */
            arraylength
            ifne 8
         6: .line 154
      StackMap locals: javax.management.MBeanNotificationInfo[]
      StackMap stack:
            aload 0 /* this */
            getstatic javax.management.StandardEmitterMBean.NO_NOTIFICATION_INFO:[Ljavax/management/MBeanNotificationInfo;
            putfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
         7: .line 155
            goto 9
         8: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* infos */
            invokevirtual javax.management.MBeanNotificationInfo[].clone:()Ljava/lang/Object;
            checkcast javax.management.MBeanNotificationInfo[]
            putfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
         9: .line 158
      StackMap locals:
      StackMap stack:
            return
        end local 5 // javax.management.MBeanNotificationInfo[] infos
        end local 4 // javax.management.NotificationEmitter emitter
        end local 3 // boolean isMXBean
        end local 2 // java.lang.Class mbeanInterface
        end local 1 // java.lang.Object implementation
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Ljavax/management/StandardEmitterMBean;
            0   10     1  implementation  TT;
            0   10     2  mbeanInterface  Ljava/lang/Class<TT;>;
            0   10     3        isMXBean  Z
            0   10     4         emitter  Ljavax/management/NotificationEmitter;
            5   10     5           infos  [Ljavax/management/MBeanNotificationInfo;
    Signature: <T:Ljava/lang/Object;>(TT;Ljava/lang/Class<TT;>;ZLjavax/management/NotificationEmitter;)V
    MethodParameters:
                Name  Flags
      implementation  
      mbeanInterface  
      isMXBean        
      emitter         

  protected void <init>(java.lang.Class<?>, javax.management.NotificationEmitter);
    descriptor: (Ljava/lang/Class;Ljavax/management/NotificationEmitter;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // java.lang.Class mbeanInterface
        start local 2 // javax.management.NotificationEmitter emitter
         0: .line 193
            aload 0 /* this */
            aload 1 /* mbeanInterface */
            iconst_0
            aload 2 /* emitter */
            invokespecial javax.management.StandardEmitterMBean.<init>:(Ljava/lang/Class;ZLjavax/management/NotificationEmitter;)V
         1: .line 194
            return
        end local 2 // javax.management.NotificationEmitter emitter
        end local 1 // java.lang.Class mbeanInterface
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Ljavax/management/StandardEmitterMBean;
            0    2     1  mbeanInterface  Ljava/lang/Class<*>;
            0    2     2         emitter  Ljavax/management/NotificationEmitter;
    Signature: (Ljava/lang/Class<*>;Ljavax/management/NotificationEmitter;)V
    MethodParameters:
                Name  Flags
      mbeanInterface  
      emitter         

  protected void <init>(java.lang.Class<?>, boolean, javax.management.NotificationEmitter);
    descriptor: (Ljava/lang/Class;ZLjavax/management/NotificationEmitter;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // java.lang.Class mbeanInterface
        start local 2 // boolean isMXBean
        start local 3 // javax.management.NotificationEmitter emitter
         0: .line 232
            aload 0 /* this */
            aload 1 /* mbeanInterface */
            iload 2 /* isMXBean */
            invokespecial javax.management.StandardMBean.<init>:(Ljava/lang/Class;Z)V
         1: .line 233
            aload 3 /* emitter */
            ifnonnull 3
         2: .line 234
            new java.lang.IllegalArgumentException
            dup
            ldc "Null emitter"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 235
      StackMap locals: javax.management.StandardEmitterMBean java.lang.Class int javax.management.NotificationEmitter
      StackMap stack:
            aload 0 /* this */
            aload 3 /* emitter */
            putfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
         4: .line 236
            aload 3 /* emitter */
            invokeinterface javax.management.NotificationEmitter.getNotificationInfo:()[Ljavax/management/MBeanNotificationInfo;
            astore 4 /* infos */
        start local 4 // javax.management.MBeanNotificationInfo[] infos
         5: .line 237
            aload 4 /* infos */
            ifnull 6
            aload 4 /* infos */
            arraylength
            ifne 8
         6: .line 238
      StackMap locals: javax.management.MBeanNotificationInfo[]
      StackMap stack:
            aload 0 /* this */
            getstatic javax.management.StandardEmitterMBean.NO_NOTIFICATION_INFO:[Ljavax/management/MBeanNotificationInfo;
            putfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
         7: .line 239
            goto 9
         8: .line 240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* infos */
            invokevirtual javax.management.MBeanNotificationInfo[].clone:()Ljava/lang/Object;
            checkcast javax.management.MBeanNotificationInfo[]
            putfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
         9: .line 242
      StackMap locals:
      StackMap stack:
            return
        end local 4 // javax.management.MBeanNotificationInfo[] infos
        end local 3 // javax.management.NotificationEmitter emitter
        end local 2 // boolean isMXBean
        end local 1 // java.lang.Class mbeanInterface
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Ljavax/management/StandardEmitterMBean;
            0   10     1  mbeanInterface  Ljava/lang/Class<*>;
            0   10     2        isMXBean  Z
            0   10     3         emitter  Ljavax/management/NotificationEmitter;
            5   10     4           infos  [Ljavax/management/MBeanNotificationInfo;
    Signature: (Ljava/lang/Class<*>;ZLjavax/management/NotificationEmitter;)V
    MethodParameters:
                Name  Flags
      mbeanInterface  
      isMXBean        
      emitter         

  public void removeNotificationListener(javax.management.NotificationListener);
    descriptor: (Ljavax/management/NotificationListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // javax.management.NotificationListener listener
         0: .line 246
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
            aload 1 /* listener */
            invokeinterface javax.management.NotificationEmitter.removeNotificationListener:(Ljavax/management/NotificationListener;)V
         1: .line 247
            return
        end local 1 // javax.management.NotificationListener listener
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/management/StandardEmitterMBean;
            0    2     1  listener  Ljavax/management/NotificationListener;
    Exceptions:
      throws javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      listener  

  public void removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // javax.management.NotificationListener listener
        start local 2 // javax.management.NotificationFilter filter
        start local 3 // java.lang.Object handback
         0: .line 253
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
            aload 1 /* listener */
            aload 2 /* filter */
            aload 3 /* handback */
            invokeinterface javax.management.NotificationEmitter.removeNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         1: .line 254
            return
        end local 3 // java.lang.Object handback
        end local 2 // javax.management.NotificationFilter filter
        end local 1 // javax.management.NotificationListener listener
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/management/StandardEmitterMBean;
            0    2     1  listener  Ljavax/management/NotificationListener;
            0    2     2    filter  Ljavax/management/NotificationFilter;
            0    2     3  handback  Ljava/lang/Object;
    Exceptions:
      throws javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      listener  
      filter    
      handback  

  public void addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // javax.management.NotificationListener listener
        start local 2 // javax.management.NotificationFilter filter
        start local 3 // java.lang.Object handback
         0: .line 259
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
            aload 1 /* listener */
            aload 2 /* filter */
            aload 3 /* handback */
            invokeinterface javax.management.NotificationEmitter.addNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         1: .line 260
            return
        end local 3 // java.lang.Object handback
        end local 2 // javax.management.NotificationFilter filter
        end local 1 // javax.management.NotificationListener listener
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/management/StandardEmitterMBean;
            0    2     1  listener  Ljavax/management/NotificationListener;
            0    2     2    filter  Ljavax/management/NotificationFilter;
            0    2     3  handback  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      listener  
      filter    
      handback  

  public javax.management.MBeanNotificationInfo[] getNotificationInfo();
    descriptor: ()[Ljavax/management/MBeanNotificationInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.StandardEmitterMBean this
         0: .line 265
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
            ifnonnull 2
         1: .line 266
            getstatic javax.management.StandardEmitterMBean.NO_NOTIFICATION_INFO:[Ljavax/management/MBeanNotificationInfo;
            areturn
         2: .line 268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
            arraylength
            ifne 4
         3: .line 269
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
            areturn
         4: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.notificationInfo:[Ljavax/management/MBeanNotificationInfo;
            invokevirtual javax.management.MBeanNotificationInfo[].clone:()Ljava/lang/Object;
            checkcast javax.management.MBeanNotificationInfo[]
            areturn
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavax/management/StandardEmitterMBean;

  public void sendNotification(javax.management.Notification);
    descriptor: (Ljavax/management/Notification;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // javax.management.Notification n
         0: .line 290
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
            instanceof javax.management.NotificationBroadcasterSupport
            ifeq 2
         1: .line 291
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
            checkcast javax.management.NotificationBroadcasterSupport
            aload 1 /* n */
            invokevirtual javax.management.NotificationBroadcasterSupport.sendNotification:(Ljavax/management/Notification;)V
            goto 7
         2: .line 294
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Cannot sendNotification when emitter is not an instance of NotificationBroadcasterSupport: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 296
            aload 0 /* this */
            getfield javax.management.StandardEmitterMBean.emitter:Ljavax/management/NotificationEmitter;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 294
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 293
            astore 2 /* msg */
        start local 2 // java.lang.String msg
         6: .line 297
            new java.lang.ClassCastException
            dup
            aload 2 /* msg */
            invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String msg
         7: .line 299
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.management.Notification n
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavax/management/StandardEmitterMBean;
            0    8     1     n  Ljavax/management/Notification;
            6    7     2   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      n     

  javax.management.MBeanNotificationInfo[] getNotifications(javax.management.MBeanInfo);
    descriptor: (Ljavax/management/MBeanInfo;)[Ljavax/management/MBeanNotificationInfo;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // javax.management.StandardEmitterMBean this
        start local 1 // javax.management.MBeanInfo info
         0: .line 313
            aload 0 /* this */
            invokevirtual javax.management.StandardEmitterMBean.getNotificationInfo:()[Ljavax/management/MBeanNotificationInfo;
            areturn
        end local 1 // javax.management.MBeanInfo info
        end local 0 // javax.management.StandardEmitterMBean this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/StandardEmitterMBean;
            0    1     1  info  Ljavax/management/MBeanInfo;
    MethodParameters:
      Name  Flags
      info  
}
SourceFile: "StandardEmitterMBean.java"