class org.springframework.context.'annotation'.ConfigurationClassParser extends java.lang.Object
{
private static final org.springframework.core.io.support.PropertySourceFactory DEFAULT_PROPERTY_SOURCE_FACTORY;
private static final java.util.Comparator DEFERRED_IMPORT_COMPARATOR;
private final org.apache.commons.logging.Log logger;
private final org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory;
private final org.springframework.beans.factory.parsing.ProblemReporter problemReporter;
private final org.springframework.core.env.Environment environment;
private final org.springframework.core.io.ResourceLoader resourceLoader;
private final org.springframework.beans.factory.support.BeanDefinitionRegistry registry;
private final org.springframework.context.'annotation'.ComponentScanAnnotationParser componentScanParser;
private final org.springframework.context.'annotation'.ConditionEvaluator conditionEvaluator;
private final java.util.Map configurationClasses;
private final java.util.Map knownSuperclasses;
private final java.util.List propertySourceNames;
private final org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack;
private java.util.List deferredImportSelectors;
public void <init>(org.springframework.core.type.classreading.MetadataReaderFactory, org.springframework.beans.factory.parsing.ProblemReporter, org.springframework.core.env.Environment, org.springframework.core.io.ResourceLoader, org.springframework.beans.factory.support.BeanNameGenerator, org.springframework.beans.factory.support.BeanDefinitionRegistry)
{
org.springframework.core.io.ResourceLoader v;
java.util.HashMap v;
org.springframework.beans.factory.parsing.ProblemReporter v;
org.springframework.beans.factory.support.BeanDefinitionRegistry v;
java.util.ArrayList v;
java.util.LinkedHashMap v;
org.springframework.context.'annotation'.ComponentScanAnnotationParser v;
org.springframework.context.'annotation'.ConditionEvaluator v;
org.springframework.core.type.classreading.MetadataReaderFactory v;
org.springframework.beans.factory.support.BeanNameGenerator v;
org.springframework.core.env.Environment v;
java.lang.Class v;
org.apache.commons.logging.Log v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.core.type.classreading.MetadataReaderFactory;
v := @parameter: org.springframework.beans.factory.parsing.ProblemReporter;
v := @parameter: org.springframework.core.env.Environment;
v := @parameter: org.springframework.core.io.ResourceLoader;
v := @parameter: org.springframework.beans.factory.support.BeanNameGenerator;
v := @parameter: org.springframework.beans.factory.support.BeanDefinitionRegistry;
specialinvoke v.<java.lang.Object: void <init>()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.commons.logging.LogFactory: org.apache.commons.logging.Log getLog(java.lang.Class)>(v);
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.apache.commons.logging.Log logger> = v;
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>()>();
v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map configurationClasses> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map knownSuperclasses> = v;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List propertySourceNames> = v;
v = new org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: void <init>()>();
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack> = v;
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory> = v;
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.beans.factory.parsing.ProblemReporter problemReporter> = v;
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.env.Environment environment> = v;
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.io.ResourceLoader resourceLoader> = v;
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.beans.factory.support.BeanDefinitionRegistry registry> = v;
v = new org.springframework.context.'annotation'.ComponentScanAnnotationParser;
specialinvoke v.<org.springframework.context.'annotation'.ComponentScanAnnotationParser: void <init>(org.springframework.core.env.Environment,org.springframework.core.io.ResourceLoader,org.springframework.beans.factory.support.BeanNameGenerator,org.springframework.beans.factory.support.BeanDefinitionRegistry)>(v, v, v, v);
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ComponentScanAnnotationParser componentScanParser> = v;
v = new org.springframework.context.'annotation'.ConditionEvaluator;
specialinvoke v.<org.springframework.context.'annotation'.ConditionEvaluator: void <init>(org.springframework.beans.factory.support.BeanDefinitionRegistry,org.springframework.core.env.Environment,org.springframework.core.io.ResourceLoader)>(v, v, v);
v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConditionEvaluator conditionEvaluator> = v;
return;
}
public void parse(java.util.Set)
{
java.lang.Throwable v;
org.springframework.beans.factory.config.BeanDefinition v;
java.lang.String v, v, v, v, v, v;
java.util.LinkedList v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v, v, v, v;
java.util.Iterator v;
org.springframework.core.type.AnnotationMetadata v;
java.util.Set v;
org.springframework.beans.factory.BeanDefinitionStoreException v, v;
java.lang.Class v;
java.lang.Object v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: java.util.Set;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List deferredImportSelectors> = v;
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: org.springframework.beans.factory.config.BeanDefinition getBeanDefinition()>();
label:
v = v instanceof org.springframework.beans.factory.'annotation'.AnnotatedBeanDefinition;
if v == 0 goto label;
v = interfaceinvoke v.<org.springframework.beans.factory.'annotation'.AnnotatedBeanDefinition: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = virtualinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: java.lang.String getBeanName()>();
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void parse(org.springframework.core.type.AnnotationMetadata,java.lang.String)>(v, v);
goto label;
label:
v = v instanceof org.springframework.beans.factory.support.AbstractBeanDefinition;
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.support.AbstractBeanDefinition: boolean hasBeanClass()>();
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.support.AbstractBeanDefinition: java.lang.Class getBeanClass()>();
v = virtualinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: java.lang.String getBeanName()>();
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void parse(java.lang.Class,java.lang.String)>(v, v);
goto label;
label:
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: java.lang.String getBeanClassName()>();
v = virtualinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: java.lang.String getBeanName()>();
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void parse(java.lang.String,java.lang.String)>(v, v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.springframework.beans.factory.BeanDefinitionStoreException;
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: java.lang.String getBeanClassName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Failed to parse configuration class [\u]");
specialinvoke v.<org.springframework.beans.factory.BeanDefinitionStoreException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processDeferredImportSelectors()>();
return;
catch org.springframework.beans.factory.BeanDefinitionStoreException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
protected final void parse(java.lang.String, java.lang.String) throws java.io.IOException
{
org.springframework.core.type.classreading.MetadataReaderFactory v;
org.springframework.core.type.classreading.MetadataReader v;
java.lang.String v, v;
org.springframework.context.'annotation'.ConfigurationClass v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory>;
v = interfaceinvoke v.<org.springframework.core.type.classreading.MetadataReaderFactory: org.springframework.core.type.classreading.MetadataReader getMetadataReader(java.lang.String)>(v);
v = new org.springframework.context.'annotation'.ConfigurationClass;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void <init>(org.springframework.core.type.classreading.MetadataReader,java.lang.String)>(v, v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
return;
}
protected final void parse(java.lang.Class, java.lang.String) throws java.io.IOException
{
java.lang.Class v;
java.lang.String v;
org.springframework.context.'annotation'.ConfigurationClass v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = new org.springframework.context.'annotation'.ConfigurationClass;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void <init>(java.lang.Class,java.lang.String)>(v, v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
return;
}
protected final void parse(org.springframework.core.type.AnnotationMetadata, java.lang.String) throws java.io.IOException
{
org.springframework.core.type.AnnotationMetadata v;
java.lang.String v;
org.springframework.context.'annotation'.ConfigurationClass v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.core.type.AnnotationMetadata;
v := @parameter: java.lang.String;
v = new org.springframework.context.'annotation'.ConfigurationClass;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void <init>(org.springframework.core.type.AnnotationMetadata,java.lang.String)>(v, v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
return;
}
public void validate()
{
java.util.Iterator v;
java.util.Map v;
java.util.Set v;
java.lang.Object v;
org.springframework.beans.factory.parsing.ProblemReporter v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map configurationClasses>;
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.beans.factory.parsing.ProblemReporter problemReporter>;
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void validate(org.springframework.beans.factory.parsing.ProblemReporter)>(v);
goto label;
label:
return;
}
public java.util.Set getConfigurationClasses()
{
java.util.Set v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
java.util.Map v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map configurationClasses>;
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
return v;
}
protected void processConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass) throws java.io.IOException
{
org.springframework.context.'annotation'.ConfigurationClass v;
org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase v;
org.springframework.context.'annotation'.ConditionEvaluator v;
java.util.Map v, v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v, v, v, v, v;
java.util.Iterator v;
java.util.Collection v;
org.springframework.core.type.AnnotationMetadata v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
java.lang.Object v, v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClass;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConditionEvaluator conditionEvaluator>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = <org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase: org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase PARSE_CONFIGURATION>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConditionEvaluator: boolean shouldSkip(org.springframework.core.type.AnnotatedTypeMetadata,org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase)>(v, v);
if v == 0 goto label;
return;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map configurationClasses>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: boolean isImported()>();
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: boolean isImported()>();
if v == 0 goto label;
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void mergeImportedBy(org.springframework.context.'annotation'.ConfigurationClass)>(v);
label:
return;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map configurationClasses>;
interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map knownSuperclasses>;
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
interfaceinvoke v.<java.util.Iterator: void remove()>();
goto label;
label:
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
label:
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass doProcessConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)>(v, v);
if v != null goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map configurationClasses>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return;
}
protected final org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass doProcessConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass, org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass) throws java.io.IOException
{
java.util.Map v, v;
org.springframework.core.type.AnnotationMetadata v, v, v, v, v, v, v, v, v;
java.util.Set v, v, v, v, v;
org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase v;
org.springframework.beans.factory.config.BeanDefinition v, v;
java.lang.String v, v, v, v, v, v, v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v, v;
org.springframework.core.'annotation'.AnnotationAttributes v;
org.springframework.context.'annotation'.BeanMethod v;
org.springframework.context.'annotation'.ConfigurationClass v;
org.springframework.context.'annotation'.ConditionEvaluator v;
boolean v, v, v, v, v, v, v, v, v, v, v, v;
org.springframework.context.'annotation'.ComponentScanAnnotationParser v;
org.springframework.core.env.Environment v, v;
java.lang.String[] v;
int v, v;
java.util.Iterator v, v, v, v;
org.springframework.core.type.classreading.MetadataReaderFactory v;
java.lang.Class v, v;
java.lang.Object v, v, v, v;
org.apache.commons.logging.Log v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClass;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processMemberClasses(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)>(v, v);
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = staticinvoke <org.springframework.context.'annotation'.AnnotationConfigUtils: java.util.Set attributesForRepeatable(org.springframework.core.type.AnnotationMetadata,java.lang.Class,java.lang.Class)>(v, class "Lorg/springframework/context/annotation/PropertySources;", class "Lorg/springframework/context/annotation/PropertySource;");
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.env.Environment environment>;
v = v instanceof org.springframework.core.env.ConfigurableEnvironment;
if v == 0 goto label;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processPropertySource(org.springframework.core.'annotation'.AnnotationAttributes)>(v);
goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.apache.commons.logging.Log logger>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Ignoring @PropertySource annotation on [\u]. Reason: Environment must implement ConfigurableEnvironment");
interfaceinvoke v.<org.apache.commons.logging.Log: void warn(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = staticinvoke <org.springframework.context.'annotation'.AnnotationConfigUtils: java.util.Set attributesForRepeatable(org.springframework.core.type.AnnotationMetadata,java.lang.Class,java.lang.Class)>(v, class "Lorg/springframework/context/annotation/ComponentScans;", class "Lorg/springframework/context/annotation/ComponentScan;");
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConditionEvaluator conditionEvaluator>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = <org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase: org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase REGISTER_BEAN>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConditionEvaluator: boolean shouldSkip(org.springframework.core.type.AnnotatedTypeMetadata,org.springframework.context.'annotation'.ConfigurationCondition$ConfigurationPhase)>(v, v);
if v != 0 goto label;
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ComponentScanAnnotationParser componentScanParser>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ComponentScanAnnotationParser: java.util.Set parse(org.springframework.core.'annotation'.AnnotationAttributes,java.lang.String)>(v, v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: org.springframework.beans.factory.config.BeanDefinition getBeanDefinition()>();
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: org.springframework.beans.factory.config.BeanDefinition getOriginatingBeanDefinition()>();
if v != null goto label;
v = virtualinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: org.springframework.beans.factory.config.BeanDefinition getBeanDefinition()>();
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory>;
v = staticinvoke <org.springframework.context.'annotation'.ConfigurationClassUtils: boolean checkConfigurationClassCandidate(org.springframework.beans.factory.config.BeanDefinition,org.springframework.core.type.classreading.MetadataReaderFactory)>(v, v);
if v == 0 goto label;
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: java.lang.String getBeanClassName()>();
v = virtualinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: java.lang.String getBeanName()>();
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void parse(java.lang.String,java.lang.String)>(v, v);
goto label;
label:
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Set getImports(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)>(v);
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processImports(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass,java.util.Collection,boolean)>(v, v, v, 1);
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = class "Lorg/springframework/context/annotation/ImportResource;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: boolean isAnnotated(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = staticinvoke <org.springframework.context.'annotation'.AnnotationConfigUtils: org.springframework.core.'annotation'.AnnotationAttributes attributesFor(org.springframework.core.type.AnnotatedTypeMetadata,java.lang.Class)>(v, class "Lorg/springframework/context/annotation/ImportResource;");
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.String[] getStringArray(java.lang.String)>("locations");
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.Class getClass(java.lang.String)>("reader");
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.env.Environment environment>;
v = interfaceinvoke v.<org.springframework.core.env.Environment: java.lang.String resolveRequiredPlaceholders(java.lang.String)>(v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void addImportedResource(java.lang.String,java.lang.Class)>(v, v);
v = v + 1;
goto label;
label:
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Set retrieveBeanMethodMetadata(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = new org.springframework.context.'annotation'.BeanMethod;
specialinvoke v.<org.springframework.context.'annotation'.BeanMethod: void <init>(org.springframework.core.type.MethodMetadata,org.springframework.context.'annotation'.ConfigurationClass)>(v, v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void addBeanMethod(org.springframework.context.'annotation'.BeanMethod)>(v);
goto label;
label:
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processInterfaces(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)>(v, v);
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: boolean hasSuperClass()>();
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getSuperClassName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("java");
if v != 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map knownSuperclasses>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v != 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Map knownSuperclasses>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass getSuperClass()>();
return v;
label:
return null;
}
private void processMemberClasses(org.springframework.context.'annotation'.ConfigurationClass, org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass) throws java.io.IOException
{
java.lang.Throwable v;
org.springframework.beans.factory.parsing.ProblemReporter v;
org.springframework.context.'annotation'.ConfigurationClass v, v;
java.lang.String v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v, v, v, v;
java.util.Iterator v;
java.util.Collection v;
org.springframework.core.type.AnnotationMetadata v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
java.lang.Object v;
org.springframework.context.'annotation'.ConfigurationClassParser$CircularImportProblem v;
org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack v, v, v, v, v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClass;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: java.util.Collection getMemberClasses()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = staticinvoke <org.springframework.context.'annotation'.ConfigurationClassUtils: boolean isConfigurationCandidate(org.springframework.core.type.AnnotationMetadata)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.beans.factory.parsing.ProblemReporter problemReporter>;
v = new org.springframework.context.'annotation'.ConfigurationClassParser$CircularImportProblem;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$CircularImportProblem: void <init>(org.springframework.context.'annotation'.ConfigurationClass,java.util.Deque)>(v, v);
interfaceinvoke v.<org.springframework.beans.factory.parsing.ProblemReporter: void error(org.springframework.beans.factory.parsing.Problem)>(v);
goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: void push(java.lang.Object)>(v);
label:
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.context.'annotation'.ConfigurationClass asConfigClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: java.lang.Object pop()>();
goto label;
label:
v := @caughtexception;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: java.lang.Object pop()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
private void processInterfaces(org.springframework.context.'annotation'.ConfigurationClass, org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass) throws java.io.IOException
{
java.util.Iterator v, v;
org.springframework.context.'annotation'.BeanMethod v;
java.util.Set v, v;
org.springframework.context.'annotation'.ConfigurationClass v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
java.lang.Object v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v, v, v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClass;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: java.util.Set getInterfaces()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Set retrieveBeanMethodMetadata(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.springframework.core.type.MethodMetadata: boolean isAbstract()>();
if v != 0 goto label;
v = new org.springframework.context.'annotation'.BeanMethod;
specialinvoke v.<org.springframework.context.'annotation'.BeanMethod: void <init>(org.springframework.core.type.MethodMetadata,org.springframework.context.'annotation'.ConfigurationClass)>(v, v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void addBeanMethod(org.springframework.context.'annotation'.BeanMethod)>(v);
goto label;
label:
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processInterfaces(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)>(v, v);
goto label;
label:
return;
}
private java.util.Set retrieveBeanMethodMetadata(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass)
{
org.springframework.core.type.classreading.MetadataReader v;
boolean v, v, v, v;
org.springframework.core.type.AnnotationMetadata v, v;
java.util.Set v, v;
int v, v, v, v, v, v;
java.lang.String v, v, v, v, v;
java.util.LinkedHashSet v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
java.util.Iterator v, v;
java.io.IOException v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
org.springframework.core.type.classreading.MetadataReaderFactory v;
java.lang.Class v, v;
java.lang.Object v, v;
org.apache.commons.logging.Log v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = class "Lorg/springframework/context/annotation/Bean;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.util.Set getAnnotatedMethods(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
if v <= 1 goto label;
v = v instanceof org.springframework.core.type.StandardAnnotationMetadata;
if v == 0 goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory>;
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = interfaceinvoke v.<org.springframework.core.type.classreading.MetadataReaderFactory: org.springframework.core.type.classreading.MetadataReader getMetadataReader(java.lang.String)>(v);
v = interfaceinvoke v.<org.springframework.core.type.classreading.MetadataReader: org.springframework.core.type.AnnotationMetadata getAnnotationMetadata()>();
v = class "Lorg/springframework/context/annotation/Bean;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.util.Set getAnnotatedMethods(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
v = interfaceinvoke v.<java.util.Set: int size()>();
if v < v goto label;
v = new java.util.LinkedHashSet;
v = interfaceinvoke v.<java.util.Set: int size()>();
specialinvoke v.<java.util.LinkedHashSet: void <init>(int)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.springframework.core.type.MethodMetadata: java.lang.String getMethodName()>();
v = interfaceinvoke v.<org.springframework.core.type.MethodMetadata: java.lang.String getMethodName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = interfaceinvoke v.<java.util.Set: int size()>();
v = interfaceinvoke v.<java.util.Set: int size()>();
if v != v goto label;
v = v;
label:
goto label;
label:
v := @caughtexception;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.apache.commons.logging.Log logger>;
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object,java.lang.Throwable)>("Failed to read class file via ASM for determining @Bean method order", v);
label:
return v;
catch java.io.IOException from label to label with label;
}
private void processPropertySource(org.springframework.core.'annotation'.AnnotationAttributes) throws java.io.IOException
{
boolean v, v, v, v, v, v, v, v, v;
org.springframework.core.io.Resource v;
org.springframework.core.io.ResourceLoader v;
org.springframework.core.env.Environment v;
org.springframework.core.env.PropertySource v;
java.lang.String[] v;
org.springframework.core.io.support.EncodedResource v;
int v, v, v;
java.lang.String v, v, v, v, v, v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
java.io.IOException v;
java.lang.IllegalArgumentException v;
java.lang.Class v;
java.lang.Object v;
org.apache.commons.logging.Log v, v, v, v;
org.springframework.core.'annotation'.AnnotationAttributes v;
org.springframework.core.io.support.PropertySourceFactory v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.core.'annotation'.AnnotationAttributes;
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.String getString(java.lang.String)>("name");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasLength(java.lang.String)>(v);
if v != 0 goto label;
v = null;
label:
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.String getString(java.lang.String)>("encoding");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasLength(java.lang.String)>(v);
if v != 0 goto label;
v = null;
label:
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.String[] getStringArray(java.lang.String)>("value");
v = lengthof v;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <org.springframework.util.Assert: void isTrue(boolean,java.lang.String)>(v, "At least one @PropertySource(value) location is required");
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: boolean getBoolean(java.lang.String)>("ignoreResourceNotFound");
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.Class getClass(java.lang.String)>("factory");
if v != class "Lorg/springframework/core/io/support/PropertySourceFactory;" goto label;
v = <org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.io.support.PropertySourceFactory DEFAULT_PROPERTY_SOURCE_FACTORY>;
goto label;
label:
v = staticinvoke <org.springframework.beans.BeanUtils: java.lang.Object instantiateClass(java.lang.Class)>(v);
label:
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.env.Environment environment>;
v = interfaceinvoke v.<org.springframework.core.env.Environment: java.lang.String resolveRequiredPlaceholders(java.lang.String)>(v);
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.io.ResourceLoader resourceLoader>;
v = interfaceinvoke v.<org.springframework.core.io.ResourceLoader: org.springframework.core.io.Resource getResource(java.lang.String)>(v);
v = new org.springframework.core.io.support.EncodedResource;
specialinvoke v.<org.springframework.core.io.support.EncodedResource: void <init>(org.springframework.core.io.Resource,java.lang.String)>(v, v);
v = interfaceinvoke v.<org.springframework.core.io.support.PropertySourceFactory: org.springframework.core.env.PropertySource createPropertySource(java.lang.String,org.springframework.core.io.support.EncodedResource)>(v, v);
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void addPropertySource(org.springframework.core.env.PropertySource)>(v);
label:
goto label;
label:
v := @caughtexception;
if v == 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.apache.commons.logging.Log logger>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isInfoEnabled()>();
if v == 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.apache.commons.logging.Log logger>;
v = virtualinvoke v.<java.lang.IllegalArgumentException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Properties location [\u] not resolvable: \u0001");
interfaceinvoke v.<org.apache.commons.logging.Log: void info(java.lang.Object)>(v);
goto label;
label:
throw v;
label:
v := @caughtexception;
if v == 0 goto label;
v = v instanceof java.io.FileNotFoundException;
if v != 0 goto label;
v = v instanceof java.net.UnknownHostException;
if v != 0 goto label;
v = v instanceof java.net.SocketException;
if v == 0 goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.apache.commons.logging.Log logger>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isInfoEnabled()>();
if v == 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.apache.commons.logging.Log logger>;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Properties location [\u] not resolvable: \u0001");
interfaceinvoke v.<org.apache.commons.logging.Log: void info(java.lang.Object)>(v);
goto label;
label:
throw v;
label:
v = v + 1;
goto label;
label:
return;
catch java.lang.IllegalArgumentException from label to label with label;
catch java.io.IOException from label to label with label;
}
private void addPropertySource(org.springframework.core.env.PropertySource)
{
org.springframework.core.env.PropertySource v, v, v, v;
int v, v;
java.lang.String v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v, v, v, v, v;
org.springframework.core.env.CompositePropertySource v;
java.util.List v, v, v, v, v;
org.springframework.core.env.Environment v;
java.lang.Object v;
org.springframework.core.env.MutablePropertySources v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.core.env.PropertySource;
v = virtualinvoke v.<org.springframework.core.env.PropertySource: java.lang.String getName()>();
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.env.Environment environment>;
v = interfaceinvoke v.<org.springframework.core.env.ConfigurableEnvironment: org.springframework.core.env.MutablePropertySources getPropertySources()>();
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List propertySourceNames>;
v = interfaceinvoke v.<java.util.List: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.core.env.MutablePropertySources: org.springframework.core.env.PropertySource get(java.lang.String)>(v);
if v == null goto label;
v = v instanceof org.springframework.core.io.support.ResourcePropertySource;
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.core.io.support.ResourcePropertySource: org.springframework.core.io.support.ResourcePropertySource withResourceName()>();
goto label;
label:
v = v;
label:
v = v;
v = v instanceof org.springframework.core.env.CompositePropertySource;
if v == 0 goto label;
virtualinvoke v.<org.springframework.core.env.CompositePropertySource: void addFirstPropertySource(org.springframework.core.env.PropertySource)>(v);
goto label;
label:
v = v instanceof org.springframework.core.io.support.ResourcePropertySource;
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.core.io.support.ResourcePropertySource: org.springframework.core.io.support.ResourcePropertySource withResourceName()>();
label:
v = new org.springframework.core.env.CompositePropertySource;
specialinvoke v.<org.springframework.core.env.CompositePropertySource: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.springframework.core.env.CompositePropertySource: void addPropertySource(org.springframework.core.env.PropertySource)>(v);
virtualinvoke v.<org.springframework.core.env.CompositePropertySource: void addPropertySource(org.springframework.core.env.PropertySource)>(v);
virtualinvoke v.<org.springframework.core.env.MutablePropertySources: void replace(java.lang.String,org.springframework.core.env.PropertySource)>(v, v);
label:
return;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List propertySourceNames>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v == 0 goto label;
virtualinvoke v.<org.springframework.core.env.MutablePropertySources: void addLast(org.springframework.core.env.PropertySource)>(v);
goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List propertySourceNames>;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List propertySourceNames>;
v = interfaceinvoke v.<java.util.List: int size()>();
v = v - 1;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
virtualinvoke v.<org.springframework.core.env.MutablePropertySources: void addBefore(java.lang.String,org.springframework.core.env.PropertySource)>(v, v);
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List propertySourceNames>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return;
}
private java.util.Set getImports(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass) throws java.io.IOException
{
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
java.util.LinkedHashSet v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void collectImports(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass,java.util.Set,java.util.Set)>(v, v, v);
return v;
}
private void collectImports(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass, java.util.Set, java.util.Set) throws java.io.IOException
{
java.lang.String v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v, v, v, v;
java.util.Iterator v;
java.util.Collection v;
org.springframework.core.type.AnnotationMetadata v;
java.util.Set v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
java.lang.Class v, v;
java.lang.Object v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v := @parameter: java.util.Set;
v := @parameter: java.util.Set;
v = interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: java.util.Set getAnnotations()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("java");
if v != 0 goto label;
v = class "Lorg/springframework/context/annotation/Import;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void collectImports(org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass,java.util.Set,java.util.Set)>(v, v, v);
goto label;
label:
v = class "Lorg/springframework/context/annotation/Import;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: java.util.Collection getAnnotationAttributes(java.lang.String,java.lang.String)>(v, "value");
interfaceinvoke v.<java.util.Set: boolean addAll(java.util.Collection)>(v);
label:
return;
}
private void processDeferredImportSelectors()
{
java.lang.Throwable v;
org.springframework.context.'annotation'.DeferredImportSelector v;
java.lang.String[] v;
org.springframework.context.'annotation'.ConfigurationClass v;
java.lang.String v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v;
java.util.Iterator v;
java.util.Collection v;
org.springframework.core.type.AnnotationMetadata v, v;
org.springframework.beans.factory.BeanDefinitionStoreException v, v;
java.util.List v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
java.lang.Object v;
java.util.Comparator v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List deferredImportSelectors>;
v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List deferredImportSelectors> = null;
v = <org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Comparator DEFERRED_IMPORT_COMPARATOR>;
staticinvoke <java.util.Collections: void sort(java.util.List,java.util.Comparator)>(v, v);
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$DeferredImportSelectorHolder: org.springframework.context.'annotation'.ConfigurationClass getConfigurationClass()>();
label:
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$DeferredImportSelectorHolder: org.springframework.context.'annotation'.DeferredImportSelector getImportSelector()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.context.'annotation'.DeferredImportSelector: java.lang.String[] selectImports(org.springframework.core.type.AnnotationMetadata)>(v);
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Collection asSourceClasses(java.lang.String[])>(v);
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processImports(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass,java.util.Collection,boolean)>(v, v, v, 0);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.springframework.beans.factory.BeanDefinitionStoreException;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Failed to process import candidates for configuration class [\u]");
specialinvoke v.<org.springframework.beans.factory.BeanDefinitionStoreException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
return;
catch org.springframework.beans.factory.BeanDefinitionStoreException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private void processImports(org.springframework.context.'annotation'.ConfigurationClass, org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass, java.util.Collection, boolean)
{
org.springframework.beans.factory.support.BeanDefinitionRegistry v, v;
org.springframework.context.'annotation'.ConfigurationClass v, v;
org.springframework.context.'annotation'.ConfigurationClassParser$DeferredImportSelectorHolder v;
org.springframework.context.'annotation'.ImportSelector v;
boolean v, v, v, v, v, v, v;
org.springframework.core.io.ResourceLoader v, v;
java.util.Collection v, v;
org.springframework.core.type.AnnotationMetadata v, v, v, v, v;
java.util.List v, v;
org.springframework.core.env.Environment v, v;
org.springframework.context.'annotation'.ConfigurationClassParser$CircularImportProblem v;
org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack v, v, v, v;
java.lang.Throwable v;
java.lang.String[] v;
org.springframework.beans.factory.parsing.ProblemReporter v;
java.lang.String v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
java.util.Iterator v;
org.springframework.beans.factory.BeanDefinitionStoreException v, v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
java.lang.Class v, v;
java.lang.Object v, v, v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClass;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v := @parameter: java.util.Collection;
v := @parameter: boolean;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v == 0 goto label;
return;
label:
if v == 0 goto label;
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: boolean isChainedImportOnStack(org.springframework.context.'annotation'.ConfigurationClass)>(v);
if v == 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.beans.factory.parsing.ProblemReporter problemReporter>;
v = new org.springframework.context.'annotation'.ConfigurationClassParser$CircularImportProblem;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$CircularImportProblem: void <init>(org.springframework.context.'annotation'.ConfigurationClass,java.util.Deque)>(v, v);
interfaceinvoke v.<org.springframework.beans.factory.parsing.ProblemReporter: void error(org.springframework.beans.factory.parsing.Problem)>(v);
goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: void push(java.lang.Object)>(v);
label:
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: boolean isAssignable(java.lang.Class)>(class "Lorg/springframework/context/annotation/ImportSelector;");
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: java.lang.Class loadClass()>();
v = staticinvoke <org.springframework.beans.BeanUtils: java.lang.Object instantiateClass(java.lang.Class,java.lang.Class)>(v, class "Lorg/springframework/context/annotation/ImportSelector;");
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.env.Environment environment>;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.io.ResourceLoader resourceLoader>;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.beans.factory.support.BeanDefinitionRegistry registry>;
staticinvoke <org.springframework.context.'annotation'.ParserStrategyUtils: void invokeAwareMethods(java.lang.Object,org.springframework.core.env.Environment,org.springframework.core.io.ResourceLoader,org.springframework.beans.factory.support.BeanDefinitionRegistry)>(v, v, v, v);
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List deferredImportSelectors>;
if v == null goto label;
v = v instanceof org.springframework.context.'annotation'.DeferredImportSelector;
if v == 0 goto label;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.List deferredImportSelectors>;
v = new org.springframework.context.'annotation'.ConfigurationClassParser$DeferredImportSelectorHolder;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$DeferredImportSelectorHolder: void <init>(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.DeferredImportSelector)>(v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.context.'annotation'.ImportSelector: java.lang.String[] selectImports(org.springframework.core.type.AnnotationMetadata)>(v);
v = specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Collection asSourceClasses(java.lang.String[])>(v);
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processImports(org.springframework.context.'annotation'.ConfigurationClass,org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass,java.util.Collection,boolean)>(v, v, v, 0);
goto label;
label:
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: boolean isAssignable(java.lang.Class)>(class "Lorg/springframework/context/annotation/ImportBeanDefinitionRegistrar;");
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: java.lang.Class loadClass()>();
v = staticinvoke <org.springframework.beans.BeanUtils: java.lang.Object instantiateClass(java.lang.Class,java.lang.Class)>(v, class "Lorg/springframework/context/annotation/ImportBeanDefinitionRegistrar;");
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.env.Environment environment>;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.io.ResourceLoader resourceLoader>;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.beans.factory.support.BeanDefinitionRegistry registry>;
staticinvoke <org.springframework.context.'annotation'.ParserStrategyUtils: void invokeAwareMethods(java.lang.Object,org.springframework.core.env.Environment,org.springframework.core.io.ResourceLoader,org.springframework.beans.factory.support.BeanDefinitionRegistry)>(v, v, v, v);
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: void addImportBeanDefinitionRegistrar(org.springframework.context.'annotation'.ImportBeanDefinitionRegistrar,org.springframework.core.type.AnnotationMetadata)>(v, v);
goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: void registerImport(org.springframework.core.type.AnnotationMetadata,java.lang.String)>(v, v);
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: org.springframework.context.'annotation'.ConfigurationClass asConfigClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: void processConfigurationClass(org.springframework.context.'annotation'.ConfigurationClass)>(v);
goto label;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: java.lang.Object pop()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.springframework.beans.factory.BeanDefinitionStoreException;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Failed to process import candidates for configuration class [\u]");
specialinvoke v.<org.springframework.beans.factory.BeanDefinitionStoreException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
return;
catch org.springframework.beans.factory.BeanDefinitionStoreException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private boolean isChainedImportOnStack(org.springframework.context.'annotation'.ConfigurationClass)
{
org.springframework.core.type.AnnotationMetadata v, v;
org.springframework.context.'annotation'.ConfigurationClass v;
java.lang.String v, v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v, v;
org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack v, v, v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClass;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: org.springframework.core.type.AnnotationMetadata getImportingClassFor(java.lang.String)>(v);
label:
if v == null goto label;
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return 1;
label:
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack: org.springframework.core.type.AnnotationMetadata getImportingClassFor(java.lang.String)>(v);
goto label;
label:
return 0;
}
org.springframework.context.'annotation'.ImportRegistry getImportRegistry()
{
org.springframework.context.'annotation'.ConfigurationClassParser v;
org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$ImportStack importStack>;
return v;
}
private org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(org.springframework.context.'annotation'.ConfigurationClass) throws java.io.IOException
{
org.springframework.core.type.AnnotationMetadata v;
org.springframework.context.'annotation'.ConfigurationClass v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v, v;
java.lang.Class v;
java.lang.String v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: org.springframework.context.'annotation'.ConfigurationClass;
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClass: org.springframework.core.type.AnnotationMetadata getMetadata()>();
v = v instanceof org.springframework.core.type.StandardAnnotationMetadata;
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.core.type.StandardAnnotationMetadata: java.lang.Class getIntrospectedClass()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(java.lang.Class)>(v);
return v;
label:
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.lang.String getClassName()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(java.lang.String)>(v);
return v;
}
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(java.lang.Class) throws java.io.IOException
{
java.lang.Throwable v;
java.lang.'annotation'.Annotation[] v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v, v;
int v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
java.lang.String v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: java.lang.Class;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
staticinvoke <org.springframework.core.'annotation'.AnnotationUtils: void validateAnnotation(java.lang.'annotation'.Annotation)>(v);
v = v + 1;
goto label;
label:
v = new org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: void <init>(org.springframework.context.'annotation'.ConfigurationClassParser,java.lang.Object)>(v, v);
label:
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(java.lang.String)>(v);
return v;
catch java.lang.Throwable from label to label with label;
}
private java.util.Collection asSourceClasses(java.lang.String[]) throws java.io.IOException
{
java.lang.String[] v;
java.util.ArrayList v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v;
int v, v, v;
java.lang.String v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: java.lang.String[];
v = new java.util.ArrayList;
v = lengthof v;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(java.lang.String)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
return v;
}
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass asSourceClass(java.lang.String) throws java.io.IOException
{
org.springframework.core.io.ResourceLoader v;
org.springframework.core.NestedIOException v;
org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass v, v;
org.springframework.core.type.classreading.MetadataReaderFactory v;
org.springframework.core.type.classreading.MetadataReader v;
java.lang.Class v;
java.lang.ClassNotFoundException v;
java.lang.ClassLoader v;
java.lang.String v, v;
org.springframework.context.'annotation'.ConfigurationClassParser v;
boolean v;
v := @this: org.springframework.context.'annotation'.ConfigurationClassParser;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("java");
if v == 0 goto label;
label:
v = new org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.io.ResourceLoader resourceLoader>;
v = interfaceinvoke v.<org.springframework.core.io.ResourceLoader: java.lang.ClassLoader getClassLoader()>();
v = virtualinvoke v.<java.lang.ClassLoader: java.lang.Class loadClass(java.lang.String)>(v);
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: void <init>(org.springframework.context.'annotation'.ConfigurationClassParser,java.lang.Object)>(v, v);
label:
return v;
label:
v := @caughtexception;
v = new org.springframework.core.NestedIOException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Failed to load class [\u]");
specialinvoke v.<org.springframework.core.NestedIOException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v = new org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass;
v = v.<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.type.classreading.MetadataReaderFactory metadataReaderFactory>;
v = interfaceinvoke v.<org.springframework.core.type.classreading.MetadataReaderFactory: org.springframework.core.type.classreading.MetadataReader getMetadataReader(java.lang.String)>(v);
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$SourceClass: void <init>(org.springframework.context.'annotation'.ConfigurationClassParser,java.lang.Object)>(v, v);
return v;
catch java.lang.ClassNotFoundException from label to label with label;
}
static void <clinit>()
{
org.springframework.context.'annotation'.ConfigurationClassParser$1 v;
org.springframework.core.io.support.DefaultPropertySourceFactory v;
v = new org.springframework.core.io.support.DefaultPropertySourceFactory;
specialinvoke v.<org.springframework.core.io.support.DefaultPropertySourceFactory: void <init>()>();
<org.springframework.context.'annotation'.ConfigurationClassParser: org.springframework.core.io.support.PropertySourceFactory DEFAULT_PROPERTY_SOURCE_FACTORY> = v;
v = new org.springframework.context.'annotation'.ConfigurationClassParser$1;
specialinvoke v.<org.springframework.context.'annotation'.ConfigurationClassParser$1: void <init>()>();
<org.springframework.context.'annotation'.ConfigurationClassParser: java.util.Comparator DEFERRED_IMPORT_COMPARATOR> = v;
return;
}
}