public class org.apache.tomcat.util.modeler.BaseNotificationBroadcaster implements javax.management.NotificationBroadcaster
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster
super_class: java.lang.Object
{
protected java.util.ArrayList<org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry> entries;
descriptor: Ljava/util/ArrayList;
flags: (0x0004) ACC_PROTECTED
Signature: Ljava/util/ArrayList<Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcasterEntry;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcaster;
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=6, locals=15, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
dup
astore 4
monitorenter
1: aload 2
instanceof org.apache.tomcat.util.modeler.BaseAttributeFilter
ifeq 25
2: aload 2
checkcast org.apache.tomcat.util.modeler.BaseAttributeFilter
astore 5
start local 5 3: aload 0
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 7
goto 24
StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.NotificationListener javax.management.NotificationFilter java.lang.Object java.util.ArrayList org.apache.tomcat.util.modeler.BaseAttributeFilter top java.util.Iterator
StackMap stack:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry
astore 6
start local 6 5: aload 6
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.listener:Ljavax/management/NotificationListener;
aload 1
if_acmpne 24
6: aload 6
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.filter:Ljavax/management/NotificationFilter;
ifnull 24
7: aload 6
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.filter:Ljavax/management/NotificationFilter;
instanceof org.apache.tomcat.util.modeler.BaseAttributeFilter
ifeq 24
8: aload 6
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.handback:Ljava/lang/Object;
aload 3
if_acmpne 24
9: aload 6
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.filter:Ljavax/management/NotificationFilter;
checkcast org.apache.tomcat.util.modeler.BaseAttributeFilter
10: astore 8
start local 8 11: aload 5
invokevirtual org.apache.tomcat.util.modeler.BaseAttributeFilter.getNames:()[Ljava/lang/String;
astore 9
start local 9 12: aload 8
invokevirtual org.apache.tomcat.util.modeler.BaseAttributeFilter.getNames:()[Ljava/lang/String;
astore 10
start local 10 13: aload 9
arraylength
ifne 16
14: aload 8
invokevirtual org.apache.tomcat.util.modeler.BaseAttributeFilter.clear:()V
15: goto 22
16: StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.NotificationListener javax.management.NotificationFilter java.lang.Object java.util.ArrayList org.apache.tomcat.util.modeler.BaseAttributeFilter org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry java.util.Iterator org.apache.tomcat.util.modeler.BaseAttributeFilter java.lang.String[] java.lang.String[]
StackMap stack:
aload 10
arraylength
ifeq 22
17: aload 9
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 21
StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.NotificationListener javax.management.NotificationFilter java.lang.Object java.util.ArrayList org.apache.tomcat.util.modeler.BaseAttributeFilter org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry java.util.Iterator org.apache.tomcat.util.modeler.BaseAttributeFilter java.lang.String[] java.lang.String[] top int int java.lang.String[]
StackMap stack:
18: aload 14
iload 12
aaload
astore 11
start local 11 19: aload 8
aload 11
invokevirtual org.apache.tomcat.util.modeler.BaseAttributeFilter.addAttribute:(Ljava/lang/String;)V
end local 11 20: iinc 12 1
StackMap locals:
StackMap stack:
21: iload 12
iload 13
if_icmplt 18
22: StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.NotificationListener javax.management.NotificationFilter java.lang.Object java.util.ArrayList org.apache.tomcat.util.modeler.BaseAttributeFilter org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry java.util.Iterator org.apache.tomcat.util.modeler.BaseAttributeFilter java.lang.String[] java.lang.String[]
StackMap stack:
aload 4
monitorexit
23: return
end local 10 end local 9 end local 8 end local 6 24: StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.NotificationListener javax.management.NotificationFilter java.lang.Object java.util.ArrayList org.apache.tomcat.util.modeler.BaseAttributeFilter top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 5 25: StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.NotificationListener javax.management.NotificationFilter java.lang.Object java.util.ArrayList
StackMap stack:
aload 0
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
new org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry
dup
26: aload 1
aload 2
aload 3
invokespecial org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.<init>:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
27: invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
28: aload 4
monitorexit
29: goto 32
StackMap locals:
StackMap stack: java.lang.Throwable
30: aload 4
monitorexit
31: athrow
32: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcaster;
0 33 1 listener Ljavax/management/NotificationListener;
0 33 2 filter Ljavax/management/NotificationFilter;
0 33 3 handback Ljava/lang/Object;
3 25 5 newFilter Lorg/apache/tomcat/util/modeler/BaseAttributeFilter;
5 24 6 item Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcasterEntry;
11 24 8 oldFilter Lorg/apache/tomcat/util/modeler/BaseAttributeFilter;
12 24 9 newNames [Ljava/lang/String;
13 24 10 oldNames [Ljava/lang/String;
19 20 11 newName Ljava/lang/String;
Exception table:
from to target type
1 23 30 any
24 29 30 any
30 31 30 any
Exceptions:
throws java.lang.IllegalArgumentException
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 0: iconst_0
anewarray javax.management.MBeanNotificationInfo
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcaster;
public void removeNotificationListener(javax.management.NotificationListener);
descriptor: (Ljavax/management/NotificationListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
aload 1
invokedynamic test(Ljavax/management/NotificationListener;)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/apache/tomcat/util/modeler/BaseNotificationBroadcaster.lambda$0(Ljavax/management/NotificationListener;Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcasterEntry;)Z (6)
(Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcasterEntry;)Z
invokevirtual java.util.ArrayList.removeIf:(Ljava/util/function/Predicate;)Z
pop
2: aload 2
monitorexit
3: goto 6
StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.NotificationListener java.util.ArrayList
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcaster;
0 7 1 listener Ljavax/management/NotificationListener;
Exception table:
from to target type
1 3 4 any
4 5 4 any
Exceptions:
throws javax.management.ListenerNotFoundException
MethodParameters:
Name Flags
listener
public void sendNotification(javax.management.Notification);
descriptor: (Ljavax/management/Notification;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcaster.entries:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.Notification java.util.ArrayList top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry
astore 3
start local 3 3: aload 3
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.filter:Ljavax/management/NotificationFilter;
ifnull 6
4: aload 3
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.filter:Ljavax/management/NotificationFilter;
aload 1
invokeinterface javax.management.NotificationFilter.isNotificationEnabled:(Ljavax/management/Notification;)Z
ifne 6
5: goto 7
6: StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.Notification java.util.ArrayList org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry java.util.Iterator
StackMap stack:
aload 3
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.listener:Ljavax/management/NotificationListener;
aload 1
aload 3
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.handback:Ljava/lang/Object;
invokeinterface javax.management.NotificationListener.handleNotification:(Ljavax/management/Notification;Ljava/lang/Object;)V
end local 3 7: StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.Notification java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: aload 2
monitorexit
9: goto 12
StackMap locals: org.apache.tomcat.util.modeler.BaseNotificationBroadcaster javax.management.Notification java.util.ArrayList
StackMap stack: java.lang.Throwable
10: aload 2
monitorexit
11: athrow
12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcaster;
0 13 1 notification Ljavax/management/Notification;
3 7 3 item Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcasterEntry;
Exception table:
from to target type
1 9 10 any
10 11 10 any
MethodParameters:
Name Flags
notification
private static boolean lambda$0(javax.management.NotificationListener, org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry);
descriptor: (Ljavax/management/NotificationListener;Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcasterEntry;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
getfield org.apache.tomcat.util.modeler.BaseNotificationBroadcasterEntry.listener:Ljavax/management/NotificationListener;
aload 0
if_acmpne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 item Lorg/apache/tomcat/util/modeler/BaseNotificationBroadcasterEntry;
}
SourceFile: "BaseNotificationBroadcaster.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles