class net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$2 extends net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy
minor version: 0
major version: 59
flags: flags: (0x4020) ACC_SUPER, ACC_ANNOTATION
this_class: net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$2
super_class: net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy
{
void <init>(java.lang.String, int, boolean);
descriptor: (Ljava/lang/String;IZ)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 0
aload 1
iload 2
iload 3
invokespecial net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy.<init>:(Ljava/lang/String;IZ)V
return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$2;
0 1 3 $anonymous0 Z
MethodParameters:
Name Flags
$enum$name
$enum$ordinal
$anonymous0
protected void apply(java.lang.instrument.Instrumentation, java.util.Map<java.lang.Class<?>, java.lang.instrument.ClassDefinition>);
descriptor: (Ljava/lang/instrument/Instrumentation;Ljava/util/Map;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassRedefinitionTransformer
dup
aload 2
invokespecial net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassRedefinitionTransformer.<init>:(Ljava/util/Map;)V
astore 3
start local 3 1: aload 0
dup
astore 4
monitorenter
2: getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy.DISPATCHER:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Dispatcher;
aload 1
aload 3
iconst_1
invokeinterface net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Dispatcher.addTransformer:(Ljava/lang/instrument/Instrumentation;Ljava/lang/instrument/ClassFileTransformer;Z)V
3: getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy.DISPATCHER:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Dispatcher;
aload 1
aload 2
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
iconst_0
anewarray java.lang.Class
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.Class[]
invokeinterface net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Dispatcher.retransformClasses:(Ljava/lang/instrument/Instrumentation;[Ljava/lang/Class;)V
4: goto 8
StackMap locals: net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$2 java.lang.instrument.Instrumentation java.util.Map net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassRedefinitionTransformer net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$2
StackMap stack: java.lang.Throwable
5: astore 5
6: aload 1
aload 3
invokeinterface java.lang.instrument.Instrumentation.removeTransformer:(Ljava/lang/instrument/ClassFileTransformer;)Z
pop
7: aload 5
athrow
8: StackMap locals:
StackMap stack:
aload 1
aload 3
invokeinterface java.lang.instrument.Instrumentation.removeTransformer:(Ljava/lang/instrument/ClassFileTransformer;)Z
pop
9: aload 4
monitorexit
10: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
11: aload 4
monitorexit
12: athrow
13: StackMap locals:
StackMap stack:
aload 3
invokevirtual net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassRedefinitionTransformer.assertTransformation:()V
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$2;
0 15 1 instrumentation Ljava/lang/instrument/Instrumentation;
0 15 2 classDefinitions Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/instrument/ClassDefinition;>;
1 15 3 classRedefinitionTransformer Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$ClassRedefinitionTransformer;
Exception table:
from to target type
3 5 5 any
2 10 11 any
11 12 11 any
Exceptions:
throws java.lang.instrument.UnmodifiableClassException
Signature: (Ljava/lang/instrument/Instrumentation;Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/instrument/ClassDefinition;>;)V
MethodParameters:
Name Flags
instrumentation
classDefinitions
protected net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy validate(java.lang.instrument.Instrumentation);
descriptor: (Ljava/lang/instrument/Instrumentation;)Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy.DISPATCHER:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Dispatcher;
aload 1
invokeinterface net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Dispatcher.isRetransformClassesSupported:(Ljava/lang/instrument/Instrumentation;)Z
ifne 2
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Does not support retransformation: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$2;
0 3 1 instrumentation Ljava/lang/instrument/Instrumentation;
MethodParameters:
Name Flags
instrumentation
public void reset(java.lang.instrument.Instrumentation, net.bytebuddy.dynamic.ClassFileLocator, java.util.List<java.lang.Class<?>>);
descriptor: (Ljava/lang/instrument/Instrumentation;Lnet/bytebuddy/dynamic/ClassFileLocator;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 4
StackMap locals: net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$2 java.lang.instrument.Instrumentation net.bytebuddy.dynamic.ClassFileLocator java.util.List top java.util.Iterator
StackMap stack:
1: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Class
astore 4
start local 4 2: getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy.DISPATCHER:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Dispatcher;
aload 1
aload 4
invokeinterface net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Dispatcher.isModifiableClass:(Ljava/lang/instrument/Instrumentation;Ljava/lang/Class;)Z
ifne 4
3: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Cannot modify type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 4 4: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy.DISPATCHER:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Dispatcher;
aload 1
getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassResettingTransformer.INSTANCE:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$ClassResettingTransformer;
iconst_1
invokeinterface net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Dispatcher.addTransformer:(Ljava/lang/instrument/Instrumentation;Ljava/lang/instrument/ClassFileTransformer;Z)V
6: getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy.DISPATCHER:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Dispatcher;
aload 1
aload 3
iconst_0
anewarray java.lang.Class
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.Class[]
invokeinterface net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Dispatcher.retransformClasses:(Ljava/lang/instrument/Instrumentation;[Ljava/lang/Class;)V
7: goto 11
StackMap locals: net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$2 java.lang.instrument.Instrumentation net.bytebuddy.dynamic.ClassFileLocator java.util.List
StackMap stack: java.lang.Throwable
8: astore 4
9: aload 1
getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassResettingTransformer.INSTANCE:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$ClassResettingTransformer;
invokeinterface java.lang.instrument.Instrumentation.removeTransformer:(Ljava/lang/instrument/ClassFileTransformer;)Z
pop
10: aload 4
athrow
11: StackMap locals:
StackMap stack:
aload 1
getstatic net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassResettingTransformer.INSTANCE:Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$ClassResettingTransformer;
invokeinterface java.lang.instrument.Instrumentation.removeTransformer:(Ljava/lang/instrument/ClassFileTransformer;)Z
pop
12: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lnet/bytebuddy/dynamic/loading/ClassReloadingStrategy$Strategy$2;
0 13 1 instrumentation Ljava/lang/instrument/Instrumentation;
0 13 2 classFileLocator Lnet/bytebuddy/dynamic/ClassFileLocator;
0 13 3 types Ljava/util/List<Ljava/lang/Class<*>;>;
2 4 4 type Ljava/lang/Class<*>;
Exception table:
from to target type
6 8 8 any
Exceptions:
throws java.lang.instrument.UnmodifiableClassException, java.lang.ClassNotFoundException
Signature: (Ljava/lang/instrument/Instrumentation;Lnet/bytebuddy/dynamic/ClassFileLocator;Ljava/util/List<Ljava/lang/Class<*>;>;)V
MethodParameters:
Name Flags
instrumentation
classFileLocator
types
}
SourceFile: "ClassReloadingStrategy.java"
EnclosingMethod: net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy
NestHost: net.bytebuddy.dynamic.loading.ClassReloadingStrategy
InnerClasses:
protected abstract Dispatcher = net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Dispatcher of net.bytebuddy.dynamic.loading.ClassReloadingStrategy
public abstract Strategy = net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy of net.bytebuddy.dynamic.loading.ClassReloadingStrategy
net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$2
protected ClassRedefinitionTransformer = net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassRedefinitionTransformer of net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy
protected final ClassResettingTransformer = net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy$ClassResettingTransformer of net.bytebuddy.dynamic.loading.ClassReloadingStrategy$Strategy