public class org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser extends java.lang.Object implements org.springframework.beans.factory.xml.BeanDefinitionParser
{
private static final java.lang.String ASYNC_EXECUTION_ASPECT_CLASS_NAME;
public void <init>()
{
org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser v;
v := @this: org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser v;
org.springframework.beans.factory.support.BeanDefinitionBuilder v, v;
org.springframework.beans.factory.xml.XmlReaderContext v, v;
org.springframework.beans.factory.support.AbstractBeanDefinition v, v;
org.springframework.beans.factory.support.BeanDefinitionRegistry v;
org.springframework.beans.factory.xml.ParserContext v;
java.lang.Boolean v, v;
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v;
org.springframework.beans.factory.parsing.CompositeComponentDefinition v;
org.w3c.dom.Element v;
java.lang.Object v;
v := @this: org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser;
v := @parameter: org.w3c.dom.Element;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: java.lang.Object extractSource(java.lang.Object)>(v);
v = new org.springframework.beans.factory.parsing.CompositeComponentDefinition;
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getTagName()>();
specialinvoke v.<org.springframework.beans.factory.parsing.CompositeComponentDefinition: void <init>(java.lang.String,java.lang.Object)>(v, v);
virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: void pushContainingComponent(org.springframework.beans.factory.parsing.CompositeComponentDefinition)>(v);
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.support.BeanDefinitionRegistry getRegistry()>();
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("mode");
v = "aspectj";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
specialinvoke v.<org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser: void registerAsyncExecutionAspect(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext)>(v, v);
goto label;
label:
v = interfaceinvoke v.<org.springframework.beans.factory.support.BeanDefinitionRegistry: boolean containsBeanDefinition(java.lang.String)>("org.springframework.context.annotation.internalAsyncAnnotationProcessor");
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.xml.XmlReaderContext getReaderContext()>();
virtualinvoke v.<org.springframework.beans.factory.xml.XmlReaderContext: void error(java.lang.String,java.lang.Object)>("Only one AsyncAnnotationBeanPostProcessor may exist within the context.", v);
goto label;
label:
v = staticinvoke <org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder genericBeanDefinition(java.lang.String)>("org.springframework.scheduling.annotation.AsyncAnnotationBeanPostProcessor");
v = virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.AbstractBeanDefinition getRawBeanDefinition()>();
virtualinvoke v.<org.springframework.beans.factory.support.AbstractBeanDefinition: void setSource(java.lang.Object)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("executor");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder addPropertyReference(java.lang.String,java.lang.String)>("executor", v);
label:
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("exception-handler");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder addPropertyReference(java.lang.String,java.lang.String)>("exceptionHandler", v);
label:
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("proxy-target-class");
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder addPropertyValue(java.lang.String,java.lang.Object)>("proxyTargetClass", v);
label:
staticinvoke <org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser: void registerPostProcessor(org.springframework.beans.factory.xml.ParserContext,org.springframework.beans.factory.support.BeanDefinitionBuilder,java.lang.String)>(v, v, "org.springframework.context.annotation.internalAsyncAnnotationProcessor");
label:
v = interfaceinvoke v.<org.springframework.beans.factory.support.BeanDefinitionRegistry: boolean containsBeanDefinition(java.lang.String)>("org.springframework.context.annotation.internalScheduledAnnotationProcessor");
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.xml.XmlReaderContext getReaderContext()>();
virtualinvoke v.<org.springframework.beans.factory.xml.XmlReaderContext: void error(java.lang.String,java.lang.Object)>("Only one ScheduledAnnotationBeanPostProcessor may exist within the context.", v);
goto label;
label:
v = staticinvoke <org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder genericBeanDefinition(java.lang.String)>("org.springframework.scheduling.annotation.ScheduledAnnotationBeanPostProcessor");
v = virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.AbstractBeanDefinition getRawBeanDefinition()>();
virtualinvoke v.<org.springframework.beans.factory.support.AbstractBeanDefinition: void setSource(java.lang.Object)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("scheduler");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder addPropertyReference(java.lang.String,java.lang.String)>("scheduler", v);
label:
staticinvoke <org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser: void registerPostProcessor(org.springframework.beans.factory.xml.ParserContext,org.springframework.beans.factory.support.BeanDefinitionBuilder,java.lang.String)>(v, v, "org.springframework.context.annotation.internalScheduledAnnotationProcessor");
label:
virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: void popAndRegisterContainingComponent()>();
return null;
}
private void registerAsyncExecutionAspect(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser v;
org.springframework.beans.factory.support.BeanDefinitionBuilder v;
org.springframework.beans.factory.support.AbstractBeanDefinition v;
org.springframework.beans.factory.support.BeanDefinitionRegistry v;
org.w3c.dom.Element v;
org.springframework.beans.factory.xml.ParserContext v;
org.springframework.beans.factory.parsing.BeanComponentDefinition v;
java.lang.String v, v;
boolean v, v, v;
v := @this: org.springframework.scheduling.config.AnnotationDrivenBeanDefinitionParser;
v := @parameter: org.w3c.dom.Element;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.support.BeanDefinitionRegistry getRegistry()>();
v = interfaceinvoke v.<org.springframework.beans.factory.support.BeanDefinitionRegistry: boolean containsBeanDefinition(java.lang.String)>("org.springframework.scheduling.config.internalAsyncExecutionAspect");
if v != 0 goto label;
v = staticinvoke <org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder genericBeanDefinition(java.lang.String)>("org.springframework.scheduling.aspectj.AnnotationAsyncExecutionAspect");
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder setFactoryMethod(java.lang.String)>("aspectOf");
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("executor");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder addPropertyReference(java.lang.String,java.lang.String)>("executor", v);
label:
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("exception-handler");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder addPropertyReference(java.lang.String,java.lang.String)>("exceptionHandler", v);
label:
v = new org.springframework.beans.factory.parsing.BeanComponentDefinition;
v = virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.AbstractBeanDefinition getBeanDefinition()>();
specialinvoke v.<org.springframework.beans.factory.parsing.BeanComponentDefinition: void <init>(org.springframework.beans.factory.config.BeanDefinition,java.lang.String)>(v, "org.springframework.scheduling.config.internalAsyncExecutionAspect");
virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: void registerBeanComponent(org.springframework.beans.factory.parsing.BeanComponentDefinition)>(v);
label:
return;
}
private static void registerPostProcessor(org.springframework.beans.factory.xml.ParserContext, org.springframework.beans.factory.support.BeanDefinitionBuilder, java.lang.String)
{
org.springframework.beans.factory.support.BeanDefinitionBuilder v;
org.springframework.beans.factory.support.AbstractBeanDefinition v, v;
org.springframework.beans.factory.support.BeanDefinitionRegistry v;
org.springframework.beans.factory.config.BeanDefinitionHolder v;
org.springframework.beans.factory.xml.ParserContext v;
org.springframework.beans.factory.parsing.BeanComponentDefinition v;
java.lang.String v;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v := @parameter: org.springframework.beans.factory.support.BeanDefinitionBuilder;
v := @parameter: java.lang.String;
virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.BeanDefinitionBuilder setRole(int)>(2);
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.support.BeanDefinitionRegistry getRegistry()>();
v = virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.AbstractBeanDefinition getBeanDefinition()>();
interfaceinvoke v.<org.springframework.beans.factory.support.BeanDefinitionRegistry: void registerBeanDefinition(java.lang.String,org.springframework.beans.factory.config.BeanDefinition)>(v, v);
v = new org.springframework.beans.factory.config.BeanDefinitionHolder;
v = virtualinvoke v.<org.springframework.beans.factory.support.BeanDefinitionBuilder: org.springframework.beans.factory.support.AbstractBeanDefinition getBeanDefinition()>();
specialinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: void <init>(org.springframework.beans.factory.config.BeanDefinition,java.lang.String)>(v, v);
v = new org.springframework.beans.factory.parsing.BeanComponentDefinition;
specialinvoke v.<org.springframework.beans.factory.parsing.BeanComponentDefinition: void <init>(org.springframework.beans.factory.config.BeanDefinitionHolder)>(v);
virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: void registerComponent(org.springframework.beans.factory.parsing.ComponentDefinition)>(v);
return;
}
}