public class org.apache.commons.lang3.event.EventUtils
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.lang3.event.EventUtils
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/lang3/event/EventUtils;
public static <L> void addEventListener(, java.lang.Class<L>, );
descriptor: (Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new java.lang.StringBuilder
dup
ldc "add"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokestatic org.apache.commons.lang3.reflect.MethodUtils.invokeMethod:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
pop
1: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
2: pop
3: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
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: ldc " does not have a public add"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc " method which takes a parameter of type "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
pop
8: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
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;
9: ldc " does not have an accessible add"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: ldc " method which takes a parameter of type "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack: java.lang.reflect.InvocationTargetException
astore 3
start local 3 13: new java.lang.RuntimeException
dup
ldc "Unable to add listener."
aload 3
invokevirtual java.lang.reflect.InvocationTargetException.getCause:()Ljava/lang/Throwable;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 14: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 eventSource Ljava/lang/Object;
0 15 1 listenerType Ljava/lang/Class<TL;>;
0 15 2 listener TL;
13 14 3 e Ljava/lang/reflect/InvocationTargetException;
Exception table:
from to target type
0 1 2 Class java.lang.NoSuchMethodException
0 1 7 Class java.lang.IllegalAccessException
0 1 12 Class java.lang.reflect.InvocationTargetException
Signature: <L:Ljava/lang/Object;>(Ljava/lang/Object;Ljava/lang/Class<TL;>;TL;)V
MethodParameters:
Name Flags
eventSource final
listenerType final
listener final
public static <L> void bindEventsToMethod(, java.lang.String, , java.lang.Class<L>, java.lang.String[]);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Class;[Ljava/lang/String;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=8, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
1: iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 3
aastore
new org.apache.commons.lang3.event.EventUtils$EventBindingInvocationHandler
dup
aload 0
aload 1
aload 4
invokespecial org.apache.commons.lang3.event.EventUtils$EventBindingInvocationHandler.<init>:(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/String;)V
2: invokestatic java.lang.reflect.Proxy.newProxyInstance:(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
astore 5
start local 5 3: aload 2
aload 3
aload 5
invokestatic org.apache.commons.lang3.event.EventUtils.addEventListener:(Ljava/lang/Object;Ljava/lang/Class;Ljava/lang/Object;)V
4: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 target Ljava/lang/Object;
0 5 1 methodName Ljava/lang/String;
0 5 2 eventSource Ljava/lang/Object;
0 5 3 listenerType Ljava/lang/Class<TL;>;
0 5 4 eventTypes [Ljava/lang/String;
3 5 5 listener TL;
Signature: <L:Ljava/lang/Object;>(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Class<TL;>;[Ljava/lang/String;)V
MethodParameters:
Name Flags
target final
methodName final
eventSource final
listenerType final
eventTypes final
}
SourceFile: "EventUtils.java"
NestMembers:
org.apache.commons.lang3.event.EventUtils$EventBindingInvocationHandler
InnerClasses:
private EventBindingInvocationHandler = org.apache.commons.lang3.event.EventUtils$EventBindingInvocationHandler of org.apache.commons.lang3.event.EventUtils