public class org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider implements org.springframework.core.env.EnvironmentCapable, org.springframework.context.ResourceLoaderAware
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider
super_class: java.lang.Object
{
static final java.lang.String DEFAULT_RESOURCE_PATTERN;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "**/*.class"
protected final org.apache.commons.logging.Log logger;
descriptor: Lorg/apache/commons/logging/Log;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private java.lang.String resourcePattern;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private final java.util.List<org.springframework.core.type.filter.TypeFilter> includeFilters;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/springframework/core/type/filter/TypeFilter;>;
private final java.util.List<org.springframework.core.type.filter.TypeFilter> excludeFilters;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/springframework/core/type/filter/TypeFilter;>;
private org.springframework.core.env.Environment environment;
descriptor: Lorg/springframework/core/env/Environment;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.springframework.context.annotation.ConditionEvaluator conditionEvaluator;
descriptor: Lorg/springframework/context/annotation/ConditionEvaluator;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.springframework.core.io.support.ResourcePatternResolver resourcePatternResolver;
descriptor: Lorg/springframework/core/io/support/ResourcePatternResolver;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory;
descriptor: Lorg/springframework/core/type/classreading/MetadataReaderFactory;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.springframework.context.index.CandidateComponentsIndex componentsIndex;
descriptor: Lorg/springframework/context/index/CandidateComponentsIndex;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
2: aload 0
ldc "**/*.class"
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePattern:Ljava/lang/String;
3: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
4: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.excludeFilters:Ljava/util/List;
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
public void <init>(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
new org.springframework.core.env.StandardEnvironment
dup
invokespecial org.springframework.core.env.StandardEnvironment.<init>:()V
invokespecial org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.<init>:(ZLorg/springframework/core/env/Environment;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 2 1 useDefaultFilters Z
MethodParameters:
Name Flags
useDefaultFilters
public void <init>(boolean, org.springframework.core.env.Environment);
descriptor: (ZLorg/springframework/core/env/Environment;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
2: aload 0
ldc "**/*.class"
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePattern:Ljava/lang/String;
3: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
4: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.excludeFilters:Ljava/util/List;
5: iload 1
ifeq 7
6: aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.registerDefaultFilters:()V
7: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider int org.springframework.core.env.Environment
StackMap stack:
aload 0
aload 2
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.setEnvironment:(Lorg/springframework/core/env/Environment;)V
8: aload 0
aconst_null
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.setResourceLoader:(Lorg/springframework/core/io/ResourceLoader;)V
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 10 1 useDefaultFilters Z
0 10 2 environment Lorg/springframework/core/env/Environment;
MethodParameters:
Name Flags
useDefaultFilters
environment
public void setResourcePattern(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "'resourcePattern' must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 0
aload 1
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePattern:Ljava/lang/String;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 3 1 resourcePattern Ljava/lang/String;
MethodParameters:
Name Flags
resourcePattern
public void addIncludeFilter(org.springframework.core.type.filter.TypeFilter);
descriptor: (Lorg/springframework/core/type/filter/TypeFilter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 2 1 includeFilter Lorg/springframework/core/type/filter/TypeFilter;
MethodParameters:
Name Flags
includeFilter
public void addExcludeFilter(org.springframework.core.type.filter.TypeFilter);
descriptor: (Lorg/springframework/core/type/filter/TypeFilter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.excludeFilters:Ljava/util/List;
iconst_0
aload 1
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 2 1 excludeFilter Lorg/springframework/core/type/filter/TypeFilter;
MethodParameters:
Name Flags
excludeFilter
public void resetFilters(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
invokeinterface java.util.List.clear:()V
1: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.excludeFilters:Ljava/util/List;
invokeinterface java.util.List.clear:()V
2: iload 1
ifeq 4
3: aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.registerDefaultFilters:()V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 5 1 useDefaultFilters Z
MethodParameters:
Name Flags
useDefaultFilters
protected void registerDefaultFilters();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
new org.springframework.core.type.filter.AnnotationTypeFilter
dup
ldc Lorg/springframework/stereotype/Component;
invokespecial org.springframework.core.type.filter.AnnotationTypeFilter.<init>:(Ljava/lang/Class;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: ldc Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
astore 1
start local 1 2: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
new org.springframework.core.type.filter.AnnotationTypeFilter
dup
3: ldc "javax.annotation.ManagedBean"
aload 1
invokestatic org.springframework.util.ClassUtils.forName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
iconst_0
invokespecial org.springframework.core.type.filter.AnnotationTypeFilter.<init>:(Ljava/lang/Class;Z)V
4: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
ldc "JSR-250 'javax.annotation.ManagedBean' found and supported for component scanning"
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
6: goto 8
7: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider java.lang.ClassLoader
StackMap stack: java.lang.ClassNotFoundException
pop
8: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
new org.springframework.core.type.filter.AnnotationTypeFilter
dup
9: ldc "javax.inject.Named"
aload 1
invokestatic org.springframework.util.ClassUtils.forName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
iconst_0
invokespecial org.springframework.core.type.filter.AnnotationTypeFilter.<init>:(Ljava/lang/Class;Z)V
10: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
ldc "JSR-330 'javax.inject.Named' annotation found and supported for component scanning"
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
12: goto 14
13: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
14: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
2 15 1 cl Ljava/lang/ClassLoader;
Exception table:
from to target type
2 6 7 Class java.lang.ClassNotFoundException
8 12 13 Class java.lang.ClassNotFoundException
public void setEnvironment(org.springframework.core.env.Environment);
descriptor: (Lorg/springframework/core/env/Environment;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "Environment must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 0
aload 1
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.environment:Lorg/springframework/core/env/Environment;
2: aload 0
aconst_null
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.conditionEvaluator:Lorg/springframework/context/annotation/ConditionEvaluator;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 4 1 environment Lorg/springframework/core/env/Environment;
MethodParameters:
Name Flags
environment
public final org.springframework.core.env.Environment getEnvironment();
descriptor: ()Lorg/springframework/core/env/Environment;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.environment:Lorg/springframework/core/env/Environment;
ifnonnull 2
1: aload 0
new org.springframework.core.env.StandardEnvironment
dup
invokespecial org.springframework.core.env.StandardEnvironment.<init>:()V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.environment:Lorg/springframework/core/env/Environment;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.environment:Lorg/springframework/core/env/Environment;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
protected org.springframework.beans.factory.support.BeanDefinitionRegistry getRegistry();
descriptor: ()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void setResourceLoader(org.springframework.core.io.ResourceLoader);
descriptor: (Lorg/springframework/core/io/ResourceLoader;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic org.springframework.core.io.support.ResourcePatternUtils.getResourcePatternResolver:(Lorg/springframework/core/io/ResourceLoader;)Lorg/springframework/core/io/support/ResourcePatternResolver;
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePatternResolver:Lorg/springframework/core/io/support/ResourcePatternResolver;
1: aload 0
new org.springframework.core.type.classreading.CachingMetadataReaderFactory
dup
aload 1
invokespecial org.springframework.core.type.classreading.CachingMetadataReaderFactory.<init>:(Lorg/springframework/core/io/ResourceLoader;)V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
2: aload 0
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePatternResolver:Lorg/springframework/core/io/support/ResourcePatternResolver;
invokeinterface org.springframework.core.io.support.ResourcePatternResolver.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic org.springframework.context.index.CandidateComponentsIndexLoader.loadIndex:(Ljava/lang/ClassLoader;)Lorg/springframework/context/index/CandidateComponentsIndex;
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.componentsIndex:Lorg/springframework/context/index/CandidateComponentsIndex;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 4 1 resourceLoader Lorg/springframework/core/io/ResourceLoader;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
resourceLoader
public final org.springframework.core.io.ResourceLoader getResourceLoader();
descriptor: ()Lorg/springframework/core/io/ResourceLoader;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getResourcePatternResolver:()Lorg/springframework/core/io/support/ResourcePatternResolver;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
private org.springframework.core.io.support.ResourcePatternResolver getResourcePatternResolver();
descriptor: ()Lorg/springframework/core/io/support/ResourcePatternResolver;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePatternResolver:Lorg/springframework/core/io/support/ResourcePatternResolver;
ifnonnull 2
1: aload 0
new org.springframework.core.io.support.PathMatchingResourcePatternResolver
dup
invokespecial org.springframework.core.io.support.PathMatchingResourcePatternResolver.<init>:()V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePatternResolver:Lorg/springframework/core/io/support/ResourcePatternResolver;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePatternResolver:Lorg/springframework/core/io/support/ResourcePatternResolver;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
public void setMetadataReaderFactory(org.springframework.core.type.classreading.MetadataReaderFactory);
descriptor: (Lorg/springframework/core/type/classreading/MetadataReaderFactory;)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.ClassPathScanningCandidateComponentProvider.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 2 1 metadataReaderFactory Lorg/springframework/core/type/classreading/MetadataReaderFactory;
MethodParameters:
Name Flags
metadataReaderFactory
public final org.springframework.core.type.classreading.MetadataReaderFactory getMetadataReaderFactory();
descriptor: ()Lorg/springframework/core/type/classreading/MetadataReaderFactory;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
ifnonnull 2
1: aload 0
new org.springframework.core.type.classreading.CachingMetadataReaderFactory
dup
invokespecial org.springframework.core.type.classreading.CachingMetadataReaderFactory.<init>:()V
putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
public java.util.Set<org.springframework.beans.factory.config.BeanDefinition> findCandidateComponents(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.componentsIndex:Lorg/springframework/context/index/CandidateComponentsIndex;
ifnull 2
aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.indexSupportsIncludeFilters:()Z
ifeq 2
1: aload 0
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.componentsIndex:Lorg/springframework/context/index/CandidateComponentsIndex;
aload 1
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.addCandidateComponentsFromIndex:(Lorg/springframework/context/index/CandidateComponentsIndex;Ljava/lang/String;)Ljava/util/Set;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents:(Ljava/lang/String;)Ljava/util/Set;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 3 1 basePackage Ljava/lang/String;
Signature: (Ljava/lang/String;)Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinition;>;
MethodParameters:
Name Flags
basePackage
private boolean indexSupportsIncludeFilters();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 2
goto 4
StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.springframework.core.type.filter.TypeFilter
astore 1
start local 1 2: aload 0
aload 1
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.indexSupportsIncludeFilter:(Lorg/springframework/core/type/filter/TypeFilter;)Z
ifne 4
3: iconst_0
ireturn
end local 1 4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
2 4 1 includeFilter Lorg/springframework/core/type/filter/TypeFilter;
private boolean indexSupportsIncludeFilter(org.springframework.core.type.filter.TypeFilter);
descriptor: (Lorg/springframework/core/type/filter/TypeFilter;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.springframework.core.type.filter.AnnotationTypeFilter
ifeq 6
1: aload 1
checkcast org.springframework.core.type.filter.AnnotationTypeFilter
invokevirtual org.springframework.core.type.filter.AnnotationTypeFilter.getAnnotationType:()Ljava/lang/Class;
astore 2
start local 2 2: ldc Lorg/springframework/stereotype/Indexed;
aload 2
invokestatic org.springframework.core.annotation.AnnotationUtils.isAnnotationDeclaredLocally:(Ljava/lang/Class;Ljava/lang/Class;)Z
ifne 5
3: aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc "javax."
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 5
4: iconst_0
ireturn
StackMap locals: java.lang.Class
StackMap stack:
5: iconst_1
ireturn
end local 2 6: StackMap locals:
StackMap stack:
aload 1
instanceof org.springframework.core.type.filter.AssignableTypeFilter
ifeq 9
7: aload 1
checkcast org.springframework.core.type.filter.AssignableTypeFilter
invokevirtual org.springframework.core.type.filter.AssignableTypeFilter.getTargetType:()Ljava/lang/Class;
astore 2
start local 2 8: ldc Lorg/springframework/stereotype/Indexed;
aload 2
invokestatic org.springframework.core.annotation.AnnotationUtils.isAnnotationDeclaredLocally:(Ljava/lang/Class;Ljava/lang/Class;)Z
ireturn
end local 2 9: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 10 1 filter Lorg/springframework/core/type/filter/TypeFilter;
2 6 2 annotation Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
8 9 2 target Ljava/lang/Class<*>;
MethodParameters:
Name Flags
filter
private java.lang.String extractStereotype(org.springframework.core.type.filter.TypeFilter);
descriptor: (Lorg/springframework/core/type/filter/TypeFilter;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.springframework.core.type.filter.AnnotationTypeFilter
ifeq 2
1: aload 1
checkcast org.springframework.core.type.filter.AnnotationTypeFilter
invokevirtual org.springframework.core.type.filter.AnnotationTypeFilter.getAnnotationType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof org.springframework.core.type.filter.AssignableTypeFilter
ifeq 4
3: aload 1
checkcast org.springframework.core.type.filter.AssignableTypeFilter
invokevirtual org.springframework.core.type.filter.AssignableTypeFilter.getTargetType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 5 1 filter Lorg/springframework/core/type/filter/TypeFilter;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
filter
private java.util.Set<org.springframework.beans.factory.config.BeanDefinition> addCandidateComponentsFromIndex(org.springframework.context.index.CandidateComponentsIndex, java.lang.String);
descriptor: (Lorg/springframework/context/index/CandidateComponentsIndex;Ljava/lang/String;)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=11, args_size=3
start local 0 start local 1 start local 2 0: new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 3
start local 3 1: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 4
start local 4 2: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 8
StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.context.index.CandidateComponentsIndex java.lang.String java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
3: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.springframework.core.type.filter.TypeFilter
astore 5
start local 5 4: aload 0
aload 5
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.extractStereotype:(Lorg/springframework/core/type/filter/TypeFilter;)Ljava/lang/String;
astore 7
start local 7 5: aload 7
ifnonnull 7
6: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Failed to extract stereotype from "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
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
7: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.context.index.CandidateComponentsIndex java.lang.String java.util.Set java.util.Set org.springframework.core.type.filter.TypeFilter java.util.Iterator java.lang.String
StackMap stack:
aload 4
aload 1
aload 2
aload 7
invokevirtual org.springframework.context.index.CandidateComponentsIndex.getCandidateTypes:(Ljava/lang/String;Ljava/lang/String;)Ljava/util/Set;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 7 end local 5 8: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.context.index.CandidateComponentsIndex java.lang.String java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
9: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
istore 5
start local 5 10: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
istore 6
start local 6 11: aload 4
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 27
StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.context.index.CandidateComponentsIndex java.lang.String java.util.Set java.util.Set int int top java.util.Iterator
StackMap stack:
12: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 13: aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getMetadataReaderFactory:()Lorg/springframework/core/type/classreading/MetadataReaderFactory;
aload 7
invokeinterface org.springframework.core.type.classreading.MetadataReaderFactory.getMetadataReader:(Ljava/lang/String;)Lorg/springframework/core/type/classreading/MetadataReader;
astore 9
start local 9 14: aload 0
aload 9
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.isCandidateComponent:(Lorg/springframework/core/type/classreading/MetadataReader;)Z
ifeq 25
15: new org.springframework.context.annotation.ScannedGenericBeanDefinition
dup
aload 9
invokespecial org.springframework.context.annotation.ScannedGenericBeanDefinition.<init>:(Lorg/springframework/core/type/classreading/MetadataReader;)V
astore 10
start local 10 16: aload 10
aload 9
invokeinterface org.springframework.core.type.classreading.MetadataReader.getResource:()Lorg/springframework/core/io/Resource;
invokevirtual org.springframework.context.annotation.ScannedGenericBeanDefinition.setSource:(Ljava/lang/Object;)V
17: aload 0
aload 10
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.isCandidateComponent:(Lorg/springframework/beans/factory/annotation/AnnotatedBeanDefinition;)Z
ifeq 22
18: iload 6
ifeq 20
19: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Using candidate component class from index: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
20: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.context.index.CandidateComponentsIndex java.lang.String java.util.Set java.util.Set int int java.lang.String java.util.Iterator org.springframework.core.type.classreading.MetadataReader org.springframework.context.annotation.ScannedGenericBeanDefinition
StackMap stack:
aload 3
aload 10
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
21: goto 27
22: StackMap locals:
StackMap stack:
iload 6
ifeq 27
23: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Ignored because not a concrete top-level class: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
end local 10 24: goto 27
25: StackMap locals:
StackMap stack:
iload 5
ifeq 27
26: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Ignored because matching an exclude filter: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
end local 9 end local 7 27: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.context.index.CandidateComponentsIndex java.lang.String java.util.Set java.util.Set int int top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
end local 6 end local 5 end local 4 28: goto 31
29: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.context.index.CandidateComponentsIndex java.lang.String java.util.Set
StackMap stack: java.io.IOException
astore 4
start local 4 30: new org.springframework.beans.factory.BeanDefinitionStoreException
dup
ldc "I/O failure during classpath scanning"
aload 4
invokespecial org.springframework.beans.factory.BeanDefinitionStoreException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 31: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 32 1 index Lorg/springframework/context/index/CandidateComponentsIndex;
0 32 2 basePackage Ljava/lang/String;
1 32 3 candidates Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinition;>;
2 28 4 types Ljava/util/Set<Ljava/lang/String;>;
4 8 5 filter Lorg/springframework/core/type/filter/TypeFilter;
5 8 7 stereotype Ljava/lang/String;
10 28 5 traceEnabled Z
11 28 6 debugEnabled Z
13 27 7 type Ljava/lang/String;
14 27 9 metadataReader Lorg/springframework/core/type/classreading/MetadataReader;
16 24 10 sbd Lorg/springframework/context/annotation/ScannedGenericBeanDefinition;
30 31 4 ex Ljava/io/IOException;
Exception table:
from to target type
1 28 29 Class java.io.IOException
Signature: (Lorg/springframework/context/index/CandidateComponentsIndex;Ljava/lang/String;)Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinition;>;
MethodParameters:
Name Flags
index
basePackage
private java.util.Set<org.springframework.beans.factory.config.BeanDefinition> scanCandidateComponents(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=13, args_size=2
start local 0 start local 1 0: new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 2
start local 2 1: new java.lang.StringBuilder
dup
ldc "classpath*:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: aload 0
aload 1
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resolveBasePackage:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 47
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePattern:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 4: aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getResourcePatternResolver:()Lorg/springframework/core/io/support/ResourcePatternResolver;
aload 3
invokeinterface org.springframework.core.io.support.ResourcePatternResolver.getResources:(Ljava/lang/String;)[Lorg/springframework/core/io/Resource;
astore 4
start local 4 5: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
istore 5
start local 5 6: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
istore 6
start local 6 7: aload 4
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 34
StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider java.lang.String java.util.Set java.lang.String org.springframework.core.io.Resource[] int int top int int org.springframework.core.io.Resource[]
StackMap stack:
8: aload 10
iload 8
aaload
astore 7
start local 7 9: iload 5
ifeq 11
10: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Scanning "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
11: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider java.lang.String java.util.Set java.lang.String org.springframework.core.io.Resource[] int int org.springframework.core.io.Resource int int org.springframework.core.io.Resource[]
StackMap stack:
aload 7
invokeinterface org.springframework.core.io.Resource.isReadable:()Z
ifeq 31
12: aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getMetadataReaderFactory:()Lorg/springframework/core/type/classreading/MetadataReaderFactory;
aload 7
invokeinterface org.springframework.core.type.classreading.MetadataReaderFactory.getMetadataReader:(Lorg/springframework/core/io/Resource;)Lorg/springframework/core/type/classreading/MetadataReader;
astore 11
start local 11 13: aload 0
aload 11
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.isCandidateComponent:(Lorg/springframework/core/type/classreading/MetadataReader;)Z
ifeq 24
14: new org.springframework.context.annotation.ScannedGenericBeanDefinition
dup
aload 11
invokespecial org.springframework.context.annotation.ScannedGenericBeanDefinition.<init>:(Lorg/springframework/core/type/classreading/MetadataReader;)V
astore 12
start local 12 15: aload 12
aload 7
invokevirtual org.springframework.context.annotation.ScannedGenericBeanDefinition.setSource:(Ljava/lang/Object;)V
16: aload 0
aload 12
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.isCandidateComponent:(Lorg/springframework/beans/factory/annotation/AnnotatedBeanDefinition;)Z
ifeq 21
17: iload 6
ifeq 19
18: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Identified candidate component class: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
19: StackMap locals: org.springframework.core.type.classreading.MetadataReader org.springframework.context.annotation.ScannedGenericBeanDefinition
StackMap stack:
aload 2
aload 12
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
20: goto 33
21: StackMap locals:
StackMap stack:
iload 6
ifeq 33
22: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Ignored because not a concrete top-level class: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
end local 12 23: goto 33
24: StackMap locals:
StackMap stack:
iload 5
ifeq 33
25: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Ignored because not matching any filter: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
end local 11 26: goto 33
27: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider java.lang.String java.util.Set java.lang.String org.springframework.core.io.Resource[] int int org.springframework.core.io.Resource int int org.springframework.core.io.Resource[]
StackMap stack: java.lang.Throwable
astore 11
start local 11 28: new org.springframework.beans.factory.BeanDefinitionStoreException
dup
29: new java.lang.StringBuilder
dup
ldc "Failed to read candidate component class: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 11
30: invokespecial org.springframework.beans.factory.BeanDefinitionStoreException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 11 31: StackMap locals:
StackMap stack:
iload 5
ifeq 33
32: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Ignored because not readable: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
end local 7 33: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider java.lang.String java.util.Set java.lang.String org.springframework.core.io.Resource[] int int top int int org.springframework.core.io.Resource[]
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
34: iload 8
iload 9
if_icmplt 8
end local 6 end local 5 end local 4 end local 3 35: goto 38
36: StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider java.lang.String java.util.Set
StackMap stack: java.io.IOException
astore 3
start local 3 37: new org.springframework.beans.factory.BeanDefinitionStoreException
dup
ldc "I/O failure during classpath scanning"
aload 3
invokespecial org.springframework.beans.factory.BeanDefinitionStoreException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 38: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 39 1 basePackage Ljava/lang/String;
1 39 2 candidates Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinition;>;
4 35 3 packageSearchPath Ljava/lang/String;
5 35 4 resources [Lorg/springframework/core/io/Resource;
6 35 5 traceEnabled Z
7 35 6 debugEnabled Z
9 33 7 resource Lorg/springframework/core/io/Resource;
13 26 11 metadataReader Lorg/springframework/core/type/classreading/MetadataReader;
15 23 12 sbd Lorg/springframework/context/annotation/ScannedGenericBeanDefinition;
28 31 11 ex Ljava/lang/Throwable;
37 38 3 ex Ljava/io/IOException;
Exception table:
from to target type
12 26 27 Class java.lang.Throwable
1 35 36 Class java.io.IOException
Signature: (Ljava/lang/String;)Ljava/util/Set<Lorg/springframework/beans/factory/config/BeanDefinition;>;
MethodParameters:
Name Flags
basePackage
protected java.lang.String resolveBasePackage(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
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getEnvironment:()Lorg/springframework/core/env/Environment;
aload 1
invokeinterface org.springframework.core.env.Environment.resolveRequiredPlaceholders:(Ljava/lang/String;)Ljava/lang/String;
invokestatic org.springframework.util.ClassUtils.convertClassNameToResourcePath:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 1 1 basePackage Ljava/lang/String;
MethodParameters:
Name Flags
basePackage
protected boolean isCandidateComponent(org.springframework.core.type.classreading.MetadataReader);
descriptor: (Lorg/springframework/core/type/classreading/MetadataReader;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.excludeFilters:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider org.springframework.core.type.classreading.MetadataReader top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.springframework.core.type.filter.TypeFilter
astore 2
start local 2 2: aload 2
aload 1
aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getMetadataReaderFactory:()Lorg/springframework/core/type/classreading/MetadataReaderFactory;
invokeinterface org.springframework.core.type.filter.TypeFilter.match:(Lorg/springframework/core/type/classreading/MetadataReader;Lorg/springframework/core/type/classreading/MetadataReaderFactory;)Z
ifeq 4
3: iconst_0
ireturn
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.includeFilters:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 9
StackMap locals:
StackMap stack:
6: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.springframework.core.type.filter.TypeFilter
astore 2
start local 2 7: aload 2
aload 1
aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getMetadataReaderFactory:()Lorg/springframework/core/type/classreading/MetadataReaderFactory;
invokeinterface org.springframework.core.type.filter.TypeFilter.match:(Lorg/springframework/core/type/classreading/MetadataReader;Lorg/springframework/core/type/classreading/MetadataReaderFactory;)Z
ifeq 9
8: aload 0
aload 1
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.isConditionMatch:(Lorg/springframework/core/type/classreading/MetadataReader;)Z
ireturn
end local 2 9: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 11 1 metadataReader Lorg/springframework/core/type/classreading/MetadataReader;
2 4 2 tf Lorg/springframework/core/type/filter/TypeFilter;
7 9 2 tf Lorg/springframework/core/type/filter/TypeFilter;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
metadataReader
private boolean isConditionMatch(org.springframework.core.type.classreading.MetadataReader);
descriptor: (Lorg/springframework/core/type/classreading/MetadataReader;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.conditionEvaluator:Lorg/springframework/context/annotation/ConditionEvaluator;
ifnonnull 4
1: aload 0
2: new org.springframework.context.annotation.ConditionEvaluator
dup
aload 0
invokevirtual org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.environment:Lorg/springframework/core/env/Environment;
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.resourcePatternResolver:Lorg/springframework/core/io/support/ResourcePatternResolver;
invokespecial org.springframework.context.annotation.ConditionEvaluator.<init>:(Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;Lorg/springframework/core/env/Environment;Lorg/springframework/core/io/ResourceLoader;)V
3: putfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.conditionEvaluator:Lorg/springframework/context/annotation/ConditionEvaluator;
4: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.conditionEvaluator:Lorg/springframework/context/annotation/ConditionEvaluator;
aload 1
invokeinterface org.springframework.core.type.classreading.MetadataReader.getAnnotationMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
invokevirtual org.springframework.context.annotation.ConditionEvaluator.shouldSkip:(Lorg/springframework/core/type/AnnotatedTypeMetadata;)Z
ifeq 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 7 1 metadataReader Lorg/springframework/core/type/classreading/MetadataReader;
MethodParameters:
Name Flags
metadataReader
protected boolean isCandidateComponent(org.springframework.beans.factory.annotation.AnnotatedBeanDefinition);
descriptor: (Lorg/springframework/beans/factory/annotation/AnnotatedBeanDefinition;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.springframework.beans.factory.annotation.AnnotatedBeanDefinition.getMetadata:()Lorg/springframework/core/type/AnnotationMetadata;
astore 2
start local 2 1: aload 2
invokeinterface org.springframework.core.type.AnnotationMetadata.isIndependent:()Z
ifeq 4
aload 2
invokeinterface org.springframework.core.type.AnnotationMetadata.isConcrete:()Z
ifne 3
2: aload 2
invokeinterface org.springframework.core.type.AnnotationMetadata.isAbstract:()Z
ifeq 4
aload 2
ldc Lorg/springframework/beans/factory/annotation/Lookup;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface org.springframework.core.type.AnnotationMetadata.hasAnnotatedMethods:(Ljava/lang/String;)Z
ifeq 4
3: StackMap locals: org.springframework.core.type.AnnotationMetadata
StackMap stack:
iconst_1
ireturn
StackMap locals:
StackMap stack:
4: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
0 5 1 beanDefinition Lorg/springframework/beans/factory/annotation/AnnotatedBeanDefinition;
1 5 2 metadata Lorg/springframework/core/type/AnnotationMetadata;
MethodParameters:
Name Flags
beanDefinition
public void clearCache();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
instanceof org.springframework.core.type.classreading.CachingMetadataReaderFactory
ifeq 2
1: aload 0
getfield org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.metadataReaderFactory:Lorg/springframework/core/type/classreading/MetadataReaderFactory;
checkcast org.springframework.core.type.classreading.CachingMetadataReaderFactory
invokevirtual org.springframework.core.type.classreading.CachingMetadataReaderFactory.clearCache:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/context/annotation/ClassPathScanningCandidateComponentProvider;
}
SourceFile: "ClassPathScanningCandidateComponentProvider.java"