public class org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser extends java.lang.Object implements org.springframework.beans.factory.xml.BeanDefinitionParser
{
private static final org.apache.dubbo.common.logger.Logger logger;
private static final java.util.regex.Pattern GROUP_AND_VERSION;
private static final java.lang.String ONRETURN;
private static final java.lang.String ONTHROW;
private static final java.lang.String ONINVOKE;
private static final java.lang.String METHOD;
private final java.lang.Class beanClass;
private final boolean required;
public void <init>(java.lang.Class, boolean)
{
java.lang.Class v;
org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser v;
boolean v;
v := @this: org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.Class beanClass> = v;
v.<org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: boolean required> = v;
return;
}
private static org.springframework.beans.factory.support.RootBeanDefinition parse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext, java.lang.Class, boolean)
{
org.springframework.beans.factory.config.BeanDefinition v, v;
org.springframework.beans.factory.support.ManagedMap v, v;
java.lang.Class[] v, v, v, v;
org.springframework.beans.MutablePropertyValues v, v, v, v, v, v, v, v, v;
java.lang.reflect.Method[] v;
java.lang.reflect.Method v, v;
org.springframework.beans.factory.config.RuntimeBeanReference v, v, v;
java.util.HashSet v;
org.w3c.dom.Node v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.w3c.dom.NamedNodeMap v;
org.w3c.dom.NodeList v, v, v, v;
org.w3c.dom.Element v;
java.lang.Class v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v;
org.springframework.beans.factory.support.RootBeanDefinition v, v;
org.springframework.beans.factory.config.BeanDefinitionHolder v;
org.apache.dubbo.config.RegistryConfig v;
org.springframework.beans.factory.xml.ParserContext v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.springframework.beans.factory.config.TypedStringValue v;
java.lang.IllegalStateException v, v;
java.lang.NoSuchMethodException v, v;
org.springframework.beans.factory.support.BeanDefinitionRegistry v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String[] v;
org.springframework.beans.PropertyValue v;
v := @parameter: org.w3c.dom.Element;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
v = new org.springframework.beans.factory.support.RootBeanDefinition;
specialinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: void <init>()>();
virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: void setBeanClass(java.lang.Class)>(v);
virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: void setLazyInit(boolean)>(0);
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "id", v);
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
if v == 0 goto label;
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "name", v);
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = class "Lorg/apache/dubbo/config/ProtocolConfig;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "dubbo";
goto label;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "interface", v);
label:
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
label:
v = v;
v = 2;
label:
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)>(v);
if v == 0 goto label;
v = v;
v = v + 1;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(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[])>("\u0001\u0001");
goto label;
label:
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isNotEmpty(java.lang.String)>(v);
if v == 0 goto label;
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)>(v);
if v == 0 goto label;
v = new java.lang.IllegalStateException;
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[])>("Duplicate spring bean id \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.springframework.beans.factory.xml.ParserContext: org.springframework.beans.factory.support.BeanDefinitionRegistry getRegistry()>();
interfaceinvoke v.<org.springframework.beans.factory.support.BeanDefinitionRegistry: void registerBeanDefinition(java.lang.String,org.springframework.beans.factory.config.BeanDefinition)>(v, v);
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>("id", v);
label:
v = class "Lorg/apache/dubbo/config/ProtocolConfig;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
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: java.lang.String[] getBeanDefinitionNames()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
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: org.springframework.beans.factory.config.BeanDefinition getBeanDefinition(java.lang.String)>(v);
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
v = virtualinvoke v.<org.springframework.beans.MutablePropertyValues: org.springframework.beans.PropertyValue getPropertyValue(java.lang.String)>("protocol");
if v == null goto label;
v = virtualinvoke v.<org.springframework.beans.PropertyValue: java.lang.Object getValue()>();
v = v instanceof org.apache.dubbo.config.ProtocolConfig;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ProtocolConfig: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
v = new org.springframework.beans.factory.config.RuntimeBeanReference;
specialinvoke v.<org.springframework.beans.factory.config.RuntimeBeanReference: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>("protocol", v);
label:
v = v + 1;
goto label;
label:
v = class "Lorg/apache/dubbo/config/spring/ServiceBean;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "class", v);
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isNotEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = new org.springframework.beans.factory.support.RootBeanDefinition;
specialinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: void <init>()>();
v = staticinvoke <org.apache.dubbo.common.utils.ReflectUtils: java.lang.Class forName(java.lang.String)>(v);
virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: void setBeanClass(java.lang.Class)>(v);
virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: void setLazyInit(boolean)>(0);
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: void parseProperties(org.w3c.dom.NodeList,org.springframework.beans.factory.support.RootBeanDefinition,org.springframework.beans.factory.xml.ParserContext)>(v, v, v);
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
v = new org.springframework.beans.factory.config.BeanDefinitionHolder;
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[])>("\u0001Impl");
specialinvoke v.<org.springframework.beans.factory.config.BeanDefinitionHolder: void <init>(org.springframework.beans.factory.config.BeanDefinition,java.lang.String)>(v, v);
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>("ref", v);
goto label;
label:
v = class "Lorg/apache/dubbo/config/ProviderConfig;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: void parseNested(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext,java.lang.Class,boolean,java.lang.String,java.lang.String,java.lang.String,org.springframework.beans.factory.config.BeanDefinition)>(v, v, class "Lorg/apache/dubbo/config/spring/ServiceBean;", 1, "service", "provider", v, v);
goto label;
label:
v = class "Lorg/apache/dubbo/config/ConsumerConfig;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: void parseNested(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext,java.lang.Class,boolean,java.lang.String,java.lang.String,java.lang.String,org.springframework.beans.factory.config.BeanDefinition)>(v, v, class "Lorg/apache/dubbo/config/spring/ReferenceBean;", 0, "reference", "consumer", v, v);
label:
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = null;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method[] getMethods()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 3 goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("set");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = lengthof v;
if v != 1 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = v[0];
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(3, 4);
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(4);
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[])>("\u0001\u0001");
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: java.lang.String camelToSplitName(java.lang.String,java.lang.String)>(v, "-");
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = null;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(3);
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[])>("get\u0001");
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>(v, v);
label:
goto label;
label:
v := @caughtexception;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(3);
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[])>("is\u0001");
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>(v, v);
label:
goto label;
label:
v := @caughtexception;
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "parameters";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: org.springframework.beans.factory.support.ManagedMap parseParameters(org.w3c.dom.NodeList,org.springframework.beans.factory.support.RootBeanDefinition,org.springframework.beans.factory.xml.ParserContext)>(v, v, v);
goto label;
label:
v = "methods";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: void parseMethods(java.lang.String,org.w3c.dom.NodeList,org.springframework.beans.factory.support.RootBeanDefinition,org.springframework.beans.factory.xml.ParserContext)>(v, v, v, v);
goto label;
label:
v = "arguments";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: void parseArguments(java.lang.String,org.w3c.dom.NodeList,org.springframework.beans.factory.support.RootBeanDefinition,org.springframework.beans.factory.xml.ParserContext)>(v, v, v, v);
goto label;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, v, v);
if v == null goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = "registry";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "N/A";
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
v = new org.apache.dubbo.config.RegistryConfig;
specialinvoke v.<org.apache.dubbo.config.RegistryConfig: void <init>()>();
virtualinvoke v.<org.apache.dubbo.config.RegistryConfig: void setAddress(java.lang.String)>("N/A");
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
goto label;
label:
v = "provider";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "registry";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "protocol";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = class "Lorg/apache/dubbo/config/AbstractServiceConfig;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
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[])>("\u0001Ids");
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
goto label;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: boolean isPrimitive(java.lang.Class)>(v);
if v == 0 goto label;
v = "async";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "false";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = "timeout";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "0";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = "delay";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "0";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = "version";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "0.0.0";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = "stat";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "-1";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = "reliable";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "false";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = null;
label:
v = v;
goto label;
label:
v = "onreturn";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "onthrow";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "oninvoke";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.String: int lastIndexOf(java.lang.String)>(".");
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
v = new org.springframework.beans.factory.config.RuntimeBeanReference;
specialinvoke v.<org.springframework.beans.factory.config.RuntimeBeanReference: void <init>(java.lang.String)>(v);
v = v;
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
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[])>("\u0001Method");
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
goto label;
label:
v = "ref";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
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)>(v);
if v == 0 goto label;
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: org.springframework.beans.factory.config.BeanDefinition getBeanDefinition(java.lang.String)>(v);
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: boolean isSingleton()>();
if v != 0 goto label;
v = new java.lang.IllegalStateException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("The exported service ref \u must be singleton! Please set the \u bean scope to singleton, eg: <bean id=\"\u0001\" scope=\"singleton\" ...>");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.springframework.beans.factory.config.RuntimeBeanReference;
specialinvoke v.<org.springframework.beans.factory.config.RuntimeBeanReference: void <init>(java.lang.String)>(v);
v = v;
label:
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NamedNodeMap getAttributes()>();
v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
v = 0;
label:
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: org.w3c.dom.Node item(int)>(v);
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getLocalName()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
if v != null goto label;
v = new org.springframework.beans.factory.support.ManagedMap;
specialinvoke v.<org.springframework.beans.factory.support.ManagedMap: void <init>()>();
v = v;
label:
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeValue()>();
v = new org.springframework.beans.factory.config.TypedStringValue;
specialinvoke v.<org.springframework.beans.factory.config.TypedStringValue: void <init>(java.lang.String,java.lang.Class)>(v, class "Ljava/lang/String;");
virtualinvoke v.<org.springframework.beans.factory.support.ManagedMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>("parameters", v);
label:
return v;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
}
private static boolean isPrimitive(java.lang.Class)
{
java.lang.Class v;
boolean v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v != 0 goto label;
if v == class "Ljava/lang/Boolean;" goto label;
if v == class "Ljava/lang/Byte;" goto label;
if v == class "Ljava/lang/Character;" goto label;
if v == class "Ljava/lang/Short;" goto label;
if v == class "Ljava/lang/Integer;" goto label;
if v == class "Ljava/lang/Long;" goto label;
if v == class "Ljava/lang/Float;" goto label;
if v == class "Ljava/lang/Double;" goto label;
if v == class "Ljava/lang/String;" goto label;
if v == class "Ljava/util/Date;" goto label;
if v != class "Ljava/lang/Class;" goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private static void parseNested(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext, java.lang.Class, boolean, java.lang.String, java.lang.String, java.lang.String, org.springframework.beans.factory.config.BeanDefinition)
{
org.springframework.beans.factory.support.RootBeanDefinition v;
org.springframework.beans.factory.xml.ParserContext v;
org.w3c.dom.Node v;
int v, v;
org.springframework.beans.factory.config.BeanDefinition v;
java.lang.String v, v, v, v, v, v;
boolean v, v, v, v, v, v, v;
org.w3c.dom.NodeList v;
org.springframework.beans.factory.config.RuntimeBeanReference v;
org.springframework.beans.MutablePropertyValues v, v;
org.w3c.dom.Element v;
java.lang.Class v;
v := @parameter: org.w3c.dom.Element;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: org.springframework.beans.factory.config.BeanDefinition;
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
if v != null goto label;
return;
label:
v = 1;
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = v instanceof org.w3c.dom.Element;
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getLocalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
if v == 0 goto label;
v = 0;
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "default", v);
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>("default", "false");
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: org.springframework.beans.factory.support.RootBeanDefinition parse(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext,java.lang.Class,boolean)>(v, v, v, v);
if v == null goto label;
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isNotEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.springframework.beans.factory.config.BeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
v = new org.springframework.beans.factory.config.RuntimeBeanReference;
specialinvoke v.<org.springframework.beans.factory.config.RuntimeBeanReference: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
return;
}
private static void parseProperties(org.w3c.dom.NodeList, org.springframework.beans.factory.support.RootBeanDefinition, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.beans.factory.support.RootBeanDefinition v;
org.springframework.beans.factory.xml.ParserContext v;
org.w3c.dom.Node v, v;
int v, v;
java.lang.String v, v, v, v, v, v, v, v;
boolean v, v, v, v, v, v;
java.lang.UnsupportedOperationException v;
org.w3c.dom.NodeList v;
org.springframework.beans.factory.config.RuntimeBeanReference v;
org.springframework.beans.MutablePropertyValues v, v;
v := @parameter: org.w3c.dom.NodeList;
v := @parameter: org.springframework.beans.factory.support.RootBeanDefinition;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
if v != null goto label;
return;
label:
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = v instanceof org.w3c.dom.Element;
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = "property";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getNodeName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "property";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getLocalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "name", v);
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isNotEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "value", v);
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "ref", v);
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isNotEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
goto label;
label:
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isNotEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
v = new org.springframework.beans.factory.config.RuntimeBeanReference;
specialinvoke v.<org.springframework.beans.factory.config.RuntimeBeanReference: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
goto label;
label:
v = new java.lang.UnsupportedOperationException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("Unsupported <property name=\"\u0001\"> sub tag, Only supported <property name=\"\u0001\" ref=\"...\" /> or <property name=\"\u0001\" value=\"...\" />");
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + 1;
goto label;
label:
return;
}
private static org.springframework.beans.factory.support.ManagedMap parseParameters(org.w3c.dom.NodeList, org.springframework.beans.factory.support.RootBeanDefinition, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.beans.factory.support.RootBeanDefinition v;
org.springframework.beans.factory.xml.ParserContext v;
org.w3c.dom.Node v, v;
int v, v;
java.lang.String v, v, v, v, v, v, v, v;
boolean v, v, v, v;
org.springframework.beans.factory.support.ManagedMap v, v;
org.w3c.dom.NodeList v;
org.springframework.beans.factory.config.TypedStringValue v;
v := @parameter: org.w3c.dom.NodeList;
v := @parameter: org.springframework.beans.factory.support.RootBeanDefinition;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
if v != null goto label;
return null;
label:
v = null;
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = v instanceof org.w3c.dom.Element;
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = "parameter";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getNodeName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "parameter";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getLocalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
if v != null goto label;
v = new org.springframework.beans.factory.support.ManagedMap;
specialinvoke v.<org.springframework.beans.factory.support.ManagedMap: void <init>()>();
v = v;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "key", v);
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "value", v);
v = "true";
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "hide", v);
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
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[])>(".\u0001");
label:
v = new org.springframework.beans.factory.config.TypedStringValue;
specialinvoke v.<org.springframework.beans.factory.config.TypedStringValue: void <init>(java.lang.String,java.lang.Class)>(v, class "Ljava/lang/String;");
virtualinvoke v.<org.springframework.beans.factory.support.ManagedMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
return v;
}
private static void parseMethods(java.lang.String, org.w3c.dom.NodeList, org.springframework.beans.factory.support.RootBeanDefinition, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.beans.factory.support.RootBeanDefinition v, v;
java.lang.IllegalStateException v;
org.springframework.beans.factory.support.ManagedList v, v;
org.springframework.beans.factory.config.BeanDefinitionHolder v;
org.springframework.beans.factory.xml.ParserContext v;
org.w3c.dom.Node v, v;
int v, v;
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v, v, v;
org.w3c.dom.NodeList v;
org.springframework.beans.MutablePropertyValues v;
v := @parameter: java.lang.String;
v := @parameter: org.w3c.dom.NodeList;
v := @parameter: org.springframework.beans.factory.support.RootBeanDefinition;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
if v != null goto label;
return;
label:
v = null;
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = v instanceof org.w3c.dom.Element;
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = "method";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getNodeName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "method";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getLocalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "name", v);
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("<dubbo:method> name attribute == null");
throw v;
label:
if v != null goto label;
v = new org.springframework.beans.factory.support.ManagedList;
specialinvoke v.<org.springframework.beans.factory.support.ManagedList: void <init>()>();
v = v;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: org.springframework.beans.factory.support.RootBeanDefinition parse(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext,java.lang.Class,boolean)>(v, v, class "Lorg/apache/dubbo/config/MethodConfig;", 0);
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[])>("\u.\u0001");
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: boolean hasPropertyValue(org.springframework.beans.factory.support.AbstractBeanDefinition,java.lang.String)>(v, "id");
if v != 0 goto label;
staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: void addPropertyValue(org.springframework.beans.factory.support.AbstractBeanDefinition,java.lang.String,java.lang.String)>(v, "id", 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)>(v, v);
virtualinvoke v.<org.springframework.beans.factory.support.ManagedList: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>("methods", v);
label:
return;
}
private static boolean hasPropertyValue(org.springframework.beans.factory.support.AbstractBeanDefinition, java.lang.String)
{
org.springframework.beans.MutablePropertyValues v;
org.springframework.beans.factory.support.AbstractBeanDefinition v;
java.lang.String v;
boolean v;
v := @parameter: org.springframework.beans.factory.support.AbstractBeanDefinition;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.springframework.beans.factory.support.AbstractBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
v = virtualinvoke v.<org.springframework.beans.MutablePropertyValues: boolean contains(java.lang.String)>(v);
return v;
}
private static void addPropertyValue(org.springframework.beans.factory.support.AbstractBeanDefinition, java.lang.String, java.lang.String)
{
org.springframework.beans.MutablePropertyValues v;
org.springframework.beans.factory.support.AbstractBeanDefinition v;
java.lang.String v, v;
boolean v, v;
v := @parameter: org.springframework.beans.factory.support.AbstractBeanDefinition;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v != 0 goto label;
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v == 0 goto label;
label:
return;
label:
v = virtualinvoke v.<org.springframework.beans.factory.support.AbstractBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>(v, v);
return;
}
private static void parseArguments(java.lang.String, org.w3c.dom.NodeList, org.springframework.beans.factory.support.RootBeanDefinition, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.beans.factory.support.RootBeanDefinition v, v;
org.springframework.beans.factory.support.ManagedList v, v;
org.springframework.beans.factory.config.BeanDefinitionHolder v;
org.springframework.beans.factory.xml.ParserContext v;
org.w3c.dom.Node v, v;
int v, v;
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v;
org.w3c.dom.NodeList v;
org.springframework.beans.MutablePropertyValues v;
v := @parameter: java.lang.String;
v := @parameter: org.w3c.dom.NodeList;
v := @parameter: org.springframework.beans.factory.support.RootBeanDefinition;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
if v != null goto label;
return;
label:
v = null;
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = v instanceof org.w3c.dom.Element;
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = "argument";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getNodeName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "argument";
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getLocalName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.String resolveAttribute(org.w3c.dom.Element,java.lang.String,org.springframework.beans.factory.xml.ParserContext)>(v, "index", v);
if v != null goto label;
v = new org.springframework.beans.factory.support.ManagedList;
specialinvoke v.<org.springframework.beans.factory.support.ManagedList: void <init>()>();
v = v;
label:
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: org.springframework.beans.factory.support.RootBeanDefinition parse(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext,java.lang.Class,boolean)>(v, v, class "Lorg/apache/dubbo/config/ArgumentConfig;", 0);
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[])>("\u.\u0001");
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)>(v, v);
virtualinvoke v.<org.springframework.beans.factory.support.ManagedList: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.springframework.beans.factory.support.RootBeanDefinition: org.springframework.beans.MutablePropertyValues getPropertyValues()>();
virtualinvoke v.<org.springframework.beans.MutablePropertyValues: void addPropertyValue(java.lang.String,java.lang.Object)>("arguments", v);
label:
return;
}
public org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)
{
org.springframework.beans.factory.support.RootBeanDefinition v;
org.w3c.dom.Element v;
org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser v;
org.springframework.beans.factory.xml.ParserContext v;
java.lang.Class v;
boolean v;
v := @this: org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser;
v := @parameter: org.w3c.dom.Element;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v = v.<org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.lang.Class beanClass>;
v = v.<org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: boolean required>;
v = staticinvoke <org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: org.springframework.beans.factory.support.RootBeanDefinition parse(org.w3c.dom.Element,org.springframework.beans.factory.xml.ParserContext,java.lang.Class,boolean)>(v, v, v, v);
return v;
}
private static java.lang.String resolveAttribute(org.w3c.dom.Element, java.lang.String, org.springframework.beans.factory.xml.ParserContext)
{
org.w3c.dom.Element v;
org.springframework.core.env.Environment v;
org.springframework.beans.factory.xml.ParserContext v;
org.springframework.beans.factory.xml.XmlReaderContext v;
java.lang.String v, v, v;
v := @parameter: org.w3c.dom.Element;
v := @parameter: java.lang.String;
v := @parameter: org.springframework.beans.factory.xml.ParserContext;
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>(v);
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: org.springframework.core.env.Environment getEnvironment()>();
v = interfaceinvoke v.<org.springframework.core.env.Environment: java.lang.String resolvePlaceholders(java.lang.String)>(v);
return v;
}
static void <clinit>()
{
java.util.regex.Pattern v;
org.apache.dubbo.common.logger.Logger v;
v = staticinvoke <org.apache.dubbo.common.logger.LoggerFactory: org.apache.dubbo.common.logger.Logger getLogger(java.lang.Class)>(class "Lorg/apache/dubbo/config/spring/schema/DubboBeanDefinitionParser;");
<org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: org.apache.dubbo.common.logger.Logger logger> = v;
v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("^[\\-.0-9_a-zA-Z]+(\\:[\\-.0-9_a-zA-Z]+)?$");
<org.apache.dubbo.config.spring.schema.DubboBeanDefinitionParser: java.util.regex.Pattern GROUP_AND_VERSION> = v;
return;
}
}