public class org.springframework.context.annotation.LoadTimeWeavingConfiguration implements org.springframework.context.annotation.ImportAware, org.springframework.beans.factory.BeanClassLoaderAware
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.context.annotation.LoadTimeWeavingConfiguration
super_class: java.lang.Object
{
private org.springframework.core.annotation.AnnotationAttributes enableLTW;
descriptor: Lorg/springframework/core/annotation/AnnotationAttributes;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.springframework.context.annotation.LoadTimeWeavingConfigurer ltwConfigurer;
descriptor: Lorg/springframework/context/annotation/LoadTimeWeavingConfigurer;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.lang.ClassLoader beanClassLoader;
descriptor: Ljava/lang/ClassLoader;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private static volatile int[] $SWITCH_TABLE$org$springframework$context$annotation$EnableLoadTimeWeaving$AspectJWeaving;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
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/springframework/context/annotation/LoadTimeWeavingConfiguration;
public void setImportMetadata(org.springframework.core.type.AnnotationMetadata);
descriptor: (Lorg/springframework/core/type/AnnotationMetadata;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc Lorg/springframework/context/annotation/EnableLoadTimeWeaving;
invokestatic org.springframework.context.annotation.AnnotationConfigUtils.attributesFor:(Lorg/springframework/core/type/AnnotatedTypeMetadata;Ljava/lang/Class;)Lorg/springframework/core/annotation/AnnotationAttributes;
putfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.enableLTW:Lorg/springframework/core/annotation/AnnotationAttributes;
1: aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.enableLTW:Lorg/springframework/core/annotation/AnnotationAttributes;
ifnonnull 5
2: new java.lang.IllegalArgumentException
dup
3: new java.lang.StringBuilder
dup
ldc "@EnableLoadTimeWeaving is not present on importing class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface org.springframework.core.type.AnnotationMetadata.getClassName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/context/annotation/LoadTimeWeavingConfiguration;
0 6 1 importMetadata Lorg/springframework/core/type/AnnotationMetadata;
MethodParameters:
Name Flags
importMetadata
public void setLoadTimeWeavingConfigurer(org.springframework.context.annotation.LoadTimeWeavingConfigurer);
descriptor: (Lorg/springframework/context/annotation/LoadTimeWeavingConfigurer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.ltwConfigurer:Lorg/springframework/context/annotation/LoadTimeWeavingConfigurer;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/LoadTimeWeavingConfiguration;
0 2 1 ltwConfigurer Lorg/springframework/context/annotation/LoadTimeWeavingConfigurer;
RuntimeVisibleAnnotations:
org.springframework.beans.factory.annotation.Autowired(required = false)
MethodParameters:
Name Flags
ltwConfigurer
public void setBeanClassLoader(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.beanClassLoader:Ljava/lang/ClassLoader;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/LoadTimeWeavingConfiguration;
0 2 1 beanClassLoader Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
beanClassLoader
public org.springframework.instrument.classloading.LoadTimeWeaver loadTimeWeaver();
descriptor: ()Lorg/springframework/instrument/classloading/LoadTimeWeaver;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.beanClassLoader:Ljava/lang/ClassLoader;
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ldc "No ClassLoader set"
invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
3: aconst_null
astore 1
start local 1 4: aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.ltwConfigurer:Lorg/springframework/context/annotation/LoadTimeWeavingConfigurer;
ifnull 6
5: aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.ltwConfigurer:Lorg/springframework/context/annotation/LoadTimeWeavingConfigurer;
invokeinterface org.springframework.context.annotation.LoadTimeWeavingConfigurer.getLoadTimeWeaver:()Lorg/springframework/instrument/classloading/LoadTimeWeaver;
astore 1
6: StackMap locals: org.springframework.instrument.classloading.LoadTimeWeaver
StackMap stack:
aload 1
ifnonnull 8
7: new org.springframework.context.weaving.DefaultContextLoadTimeWeaver
dup
aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.beanClassLoader:Ljava/lang/ClassLoader;
invokespecial org.springframework.context.weaving.DefaultContextLoadTimeWeaver.<init>:(Ljava/lang/ClassLoader;)V
astore 1
8: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.enableLTW:Lorg/springframework/core/annotation/AnnotationAttributes;
ifnull 17
9: aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.enableLTW:Lorg/springframework/core/annotation/AnnotationAttributes;
ldc "aspectjWeaving"
invokevirtual org.springframework.core.annotation.AnnotationAttributes.getEnum:(Ljava/lang/String;)Ljava/lang/Enum;
checkcast org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving
astore 2
start local 2 10: invokestatic org.springframework.context.annotation.LoadTimeWeavingConfiguration.$SWITCH_TABLE$org$springframework$context$annotation$EnableLoadTimeWeaving$AspectJWeaving:()[I
aload 2
invokevirtual org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 16
2: 11
3: 12
default: 17
}
11: StackMap locals: org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving
StackMap stack:
goto 17
12: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.beanClassLoader:Ljava/lang/ClassLoader;
ldc "META-INF/aop.xml"
invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
ifnonnull 14
13: goto 17
14: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.beanClassLoader:Ljava/lang/ClassLoader;
invokestatic org.springframework.context.weaving.AspectJWeavingEnabler.enableAspectJWeaving:(Lorg/springframework/instrument/classloading/LoadTimeWeaver;Ljava/lang/ClassLoader;)V
15: goto 17
16: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.springframework.context.annotation.LoadTimeWeavingConfiguration.beanClassLoader:Ljava/lang/ClassLoader;
invokestatic org.springframework.context.weaving.AspectJWeavingEnabler.enableAspectJWeaving:(Lorg/springframework/instrument/classloading/LoadTimeWeaver;Ljava/lang/ClassLoader;)V
end local 2 17: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/springframework/context/annotation/LoadTimeWeavingConfiguration;
4 18 1 loadTimeWeaver Lorg/springframework/instrument/classloading/LoadTimeWeaver;
10 17 2 aspectJWeaving Lorg/springframework/context/annotation/EnableLoadTimeWeaving$AspectJWeaving;
RuntimeVisibleAnnotations:
org.springframework.context.annotation.Bean(name = {"loadTimeWeaver"})
org.springframework.context.annotation.Role(value = 2)
static int[] $SWITCH_TABLE$org$springframework$context$annotation$EnableLoadTimeWeaving$AspectJWeaving();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.springframework.context.annotation.LoadTimeWeavingConfiguration.$SWITCH_TABLE$org$springframework$context$annotation$EnableLoadTimeWeaving$AspectJWeaving:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.values:()[Lorg/springframework/context/annotation/EnableLoadTimeWeaving$AspectJWeaving;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.AUTODETECT:Lorg/springframework/context/annotation/EnableLoadTimeWeaving$AspectJWeaving;
invokevirtual org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.DISABLED:Lorg/springframework/context/annotation/EnableLoadTimeWeaving$AspectJWeaving;
invokevirtual org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.ENABLED:Lorg/springframework/context/annotation/EnableLoadTimeWeaving$AspectJWeaving;
invokevirtual org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic org.springframework.context.annotation.LoadTimeWeavingConfiguration.$SWITCH_TABLE$org$springframework$context$annotation$EnableLoadTimeWeaving$AspectJWeaving:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
}
SourceFile: "LoadTimeWeavingConfiguration.java"
InnerClasses:
public final AspectJWeaving = org.springframework.context.annotation.EnableLoadTimeWeaving$AspectJWeaving of org.springframework.context.annotation.EnableLoadTimeWeaving
RuntimeVisibleAnnotations:
org.springframework.context.annotation.Configuration()