public class org.springframework.context.annotation.Jsr330ScopeMetadataResolver implements org.springframework.context.annotation.ScopeMetadataResolver
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.context.annotation.Jsr330ScopeMetadataResolver
super_class: java.lang.Object
{
private final java.util.Map<java.lang.String, java.lang.String> scopeMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
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
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.springframework.context.annotation.Jsr330ScopeMetadataResolver.scopeMap:Ljava/util/Map;
2: aload 0
ldc "javax.inject.Singleton"
ldc "singleton"
invokevirtual org.springframework.context.annotation.Jsr330ScopeMetadataResolver.registerScope:(Ljava/lang/String;Ljava/lang/String;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/context/annotation/Jsr330ScopeMetadataResolver;
public final void registerScope(java.lang.Class<?>, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.context.annotation.Jsr330ScopeMetadataResolver.scopeMap:Ljava/util/Map;
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/Jsr330ScopeMetadataResolver;
0 2 1 annotationType Ljava/lang/Class<*>;
0 2 2 scopeName Ljava/lang/String;
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)V
MethodParameters:
Name Flags
annotationType
scopeName
public final void registerScope(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.context.annotation.Jsr330ScopeMetadataResolver.scopeMap:Ljava/util/Map;
aload 1
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/Jsr330ScopeMetadataResolver;
0 2 1 annotationType Ljava/lang/String;
0 2 2 scopeName Ljava/lang/String;
MethodParameters:
Name Flags
annotationType
scopeName
protected java.lang.String resolveScopeName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.context.annotation.Jsr330ScopeMetadataResolver.scopeMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/context/annotation/Jsr330ScopeMetadataResolver;
0 1 1 annotationType Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
annotationType
public org.springframework.context.annotation.ScopeMetadata resolveScopeMetadata(org.springframework.beans.factory.config.BeanDefinition);
descriptor: (Lorg/springframework/beans/factory/config/BeanDefinition;)Lorg/springframework/context/annotation/ScopeMetadata;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: new org.springframework.context.annotation.ScopeMetadata
dup
invokespecial org.springframework.context.annotation.ScopeMetadata.<init>:()V
astore 2
start local 2 1: aload 2
ldc "prototype"
invokevirtual org.springframework.context.annotation.ScopeMetadata.setScopeName:(Ljava/lang/String;)V
2: aload 1
instanceof org.springframework.beans.factory.annotation.AnnotatedBeanDefinition
ifeq 22
3: aload 1
checkcast org.springframework.beans.factory.annotation.AnnotatedBeanDefinition
astore 3
start local 3 4: aload 3
invokeinterface org.springframework.beans.factory.annotation.AnnotatedBeanDefinition.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
invokeinterface org.springframework.core.type.AnnotationMetadata.getAnnotationTypes:()Ljava/util/Set;
astore 4
start local 4 5: aconst_null
astore 5
start local 5 6: aload 4
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 21
StackMap locals: org.springframework.context.annotation.Jsr330ScopeMetadataResolver org.springframework.beans.factory.config.BeanDefinition org.springframework.context.annotation.ScopeMetadata org.springframework.beans.factory.annotation.AnnotatedBeanDefinition java.util.Set java.lang.String top java.util.Iterator
StackMap stack:
7: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 8: aload 3
invokeinterface org.springframework.beans.factory.annotation.AnnotatedBeanDefinition.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
aload 6
invokeinterface org.springframework.core.type.AnnotationMetadata.getMetaAnnotationTypes:(Ljava/lang/String;)Ljava/util/Set;
astore 8
start local 8 9: aload 8
ldc "javax.inject.Scope"
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 21
10: aload 5
ifnull 14
11: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Found ambiguous scope annotations on bean class ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
12: aload 1
invokeinterface org.springframework.beans.factory.config.BeanDefinition.getBeanClassName:()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;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals: org.springframework.context.annotation.Jsr330ScopeMetadataResolver org.springframework.beans.factory.config.BeanDefinition org.springframework.context.annotation.ScopeMetadata org.springframework.beans.factory.annotation.AnnotatedBeanDefinition java.util.Set java.lang.String java.lang.String java.util.Iterator java.util.Set
StackMap stack:
aload 6
astore 5
15: aload 0
aload 6
invokevirtual org.springframework.context.annotation.Jsr330ScopeMetadataResolver.resolveScopeName:(Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 16: aload 9
ifnonnull 20
17: new java.lang.IllegalStateException
dup
18: new java.lang.StringBuilder
dup
ldc "Unsupported scope annotation - not mapped onto Spring scope name: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals: java.lang.String
StackMap stack:
aload 2
aload 9
invokevirtual org.springframework.context.annotation.ScopeMetadata.setScopeName:(Ljava/lang/String;)V
end local 9 end local 8 end local 6 21: StackMap locals: org.springframework.context.annotation.Jsr330ScopeMetadataResolver org.springframework.beans.factory.config.BeanDefinition org.springframework.context.annotation.ScopeMetadata org.springframework.beans.factory.annotation.AnnotatedBeanDefinition java.util.Set java.lang.String top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 5 end local 4 end local 3 22: StackMap locals: org.springframework.context.annotation.Jsr330ScopeMetadataResolver org.springframework.beans.factory.config.BeanDefinition org.springframework.context.annotation.ScopeMetadata
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/springframework/context/annotation/Jsr330ScopeMetadataResolver;
0 23 1 definition Lorg/springframework/beans/factory/config/BeanDefinition;
1 23 2 metadata Lorg/springframework/context/annotation/ScopeMetadata;
4 22 3 annDef Lorg/springframework/beans/factory/annotation/AnnotatedBeanDefinition;
5 22 4 annTypes Ljava/util/Set<Ljava/lang/String;>;
6 22 5 found Ljava/lang/String;
8 21 6 annType Ljava/lang/String;
9 21 8 metaAnns Ljava/util/Set<Ljava/lang/String;>;
16 21 9 scopeName Ljava/lang/String;
MethodParameters:
Name Flags
definition
}
SourceFile: "Jsr330ScopeMetadataResolver.java"