public abstract class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser extends java.lang.Object implements org.springframework.beans.factory.xml.BeanDefinitionParser
{
public static final java.lang.String ID_ATTRIBUTE;
public static final java.lang.String NAME_ATTRIBUTE;
public void <init>()
{
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public final org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.beans.factory.xml.XmlReaderContext v, v;
java.lang.String[] v, v;
org.springframework.beans.factory.support.AbstractBeanDefinition 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;
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate v;
java.lang.String v, v, v, v, v;
boolean v, v, v, v, v;
org.springframework.beans.factory.BeanDefinitionStoreException v;
org.w3c.dom.Element v;
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
v := @parameter: org.w3c.dom.Element;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v = virtualinvoke v.<org.springframework.beans.factory.xml.AbstractBeanDefinitionParser: org.springframework.beans.factory.support.AbstractBeanDefinition parseInternal(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext)>(v, v);
if v == null goto label;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: boolean isNested()>();
if v != 0 goto label;
label:
v = virtualinvoke v.<org.springframework.beans.factory.xml.AbstractBeanDefinitionParser: java.lang.String resolveId(org.w3c.dom.Element,org.springframework.beans.factory.support.AbstractBeanDefinition,org.springframework.beans.factory.xml.ParserContext)>(v, v, v);
v = staticinvoke <org.springframework.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.xml.XmlReaderContext getReaderContext()>();
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.xml.BeanDefinitionParserDelegate getDelegate()>();
v = virtualinvoke v.<org.springframework.beans.factory.xml.BeanDefinitionParserDelegate: java.lang.String getLocalName(org.w3c.dom.Node)>(v);
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[])>("Id is required for element \'\u0001\' when used as a top-level tag");
virtualinvoke v.<org.springframework.beans.factory.xml.XmlReaderContext: void error(java.lang.String,java.lang.Object)>(v, v);
label:
v = null;
v = virtualinvoke v.<org.springframework.beans.factory.xml.AbstractBeanDefinitionParser: boolean shouldParseNameAsAliases()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("name");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasLength(java.lang.String)>(v);
if v == 0 goto label;
v = staticinvoke <org.springframework.util.StringUtils: java.lang.String[] commaDelimitedListToStringArray(java.lang.String)>(v);
v = staticinvoke <org.springframework.util.StringUtils: java.lang.String[] trimArrayElements(java.lang.String[])>(v);
label:
v = new org.springframework.beans.factory.config.BeanDefinitionHolder;
specialinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: void <init>(org.springframework.beans.factory.config.BeanDefinition,java.lang.String,java.lang.String[])>(v, v, v);
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.support.BeanDefinitionRegistry getRegistry()>();
virtualinvoke v.<org.springframework.beans.factory.xml.AbstractBeanDefinitionParser: void registerBeanDefinition(org.springframework.beans.factory.config.BeanDefinitionHolder,org.springframework.beans.factory.support.BeanDefinitionRegistry)>(v, v);
v = virtualinvoke v.<org.springframework.beans.factory.xml.AbstractBeanDefinitionParser: boolean shouldFireEvents()>();
if v == 0 goto label;
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.AbstractBeanDefinitionParser: void postProcessComponentDefinition(org.springframework.beans.factory.parsing.BeanComponentDefinition)>(v);
virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: void registerComponent(org.springframework.beans.factory.parsing.ComponentDefinition)>(v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.xml.XmlReaderContext getReaderContext()>();
v = virtualinvoke v.<org.springframework.beans.factory.BeanDefinitionStoreException: java.lang.String getMessage()>();
virtualinvoke v.<org.springframework.beans.factory.xml.XmlReaderContext: void error(java.lang.String,java.lang.Object)>(v, v);
return null;
label:
return v;
catch org.springframework.beans.factory.BeanDefinitionStoreException from label to label with label;
}
protected java.lang.String resolveId(org.w3c.dom.Element, org.springframework.beans.factory.support.AbstractBeanDefinition, org.springframework.beans.factory.xml.ParserContext) throws org.springframework.beans.factory.BeanDefinitionStoreException
{
org.springframework.beans.factory.xml.XmlReaderContext v, v;
org.springframework.beans.factory.support.AbstractBeanDefinition v;
org.w3c.dom.Element v;
org.springframework.beans.factory.xml.ParserContext v;
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
java.lang.String v, v;
boolean v, v, v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
v := @parameter: org.w3c.dom.Element;
v := @parameter: org.springframework.beans.factory.support.AbstractBeanDefinition;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v = virtualinvoke v.<org.springframework.beans.factory.xml.AbstractBeanDefinitionParser: boolean shouldGenerateId()>();
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.xml.XmlReaderContext getReaderContext()>();
v = virtualinvoke v.<org.springframework.beans.factory.xml.XmlReaderContext: java.lang.String generateBeanName(org.springframework.beans.factory.config.BeanDefinition)>(v);
return v;
label:
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("id");
v = staticinvoke <org.springframework.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.xml.AbstractBeanDefinitionParser: boolean shouldGenerateIdAsFallback()>();
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.xml.XmlReaderContext getReaderContext()>();
v = virtualinvoke v.<org.springframework.beans.factory.xml.XmlReaderContext: java.lang.String generateBeanName(org.springframework.beans.factory.config.BeanDefinition)>(v);
label:
return v;
}
protected void registerBeanDefinition(org.springframework.beans.factory.config.BeanDefinitionHolder, org.springframework.beans.factory.support.BeanDefinitionRegistry)
{
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
org.springframework.beans.factory.config.BeanDefinitionHolder v;
org.springframework.beans.factory.support.BeanDefinitionRegistry v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
v := @parameter: org.springframework.beans.factory.config.BeanDefinitionHolder;
v := @parameter: org.springframework.beans.factory.support.BeanDefinitionRegistry;
staticinvoke <org.springframework.beans.factory.support.BeanDefinitionReaderUtils: void registerBeanDefinition(org.springframework.beans.factory.config.BeanDefinitionHolder,org.springframework.beans.factory.support.BeanDefinitionRegistry)>(v, v);
return;
}
protected abstract org.springframework.beans.factory.support.AbstractBeanDefinition parseInternal(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
protected boolean shouldGenerateId()
{
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
return 0;
}
protected boolean shouldGenerateIdAsFallback()
{
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
return 0;
}
protected boolean shouldParseNameAsAliases()
{
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
return 1;
}
protected boolean shouldFireEvents()
{
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
return 1;
}
protected void postProcessComponentDefinition(org.springframework.beans.factory.parsing.BeanComponentDefinition)
{
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser v;
org.springframework.beans.factory.parsing.BeanComponentDefinition v;
v := @this: org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
v := @parameter: org.springframework.beans.factory.parsing.BeanComponentDefinition;
return;
}
}