class org.springframework.aop.config.ConfigBeanDefinitionParser implements org.springframework.beans.factory.xml.BeanDefinitionParser
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.aop.config.ConfigBeanDefinitionParser
super_class: java.lang.Object
{
private static final java.lang.String ASPECT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "aspect"
private static final java.lang.String EXPRESSION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "expression"
private static final java.lang.String ID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "id"
private static final java.lang.String POINTCUT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "pointcut"
private static final java.lang.String ADVICE_BEAN_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "adviceBeanName"
private static final java.lang.String ADVISOR;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "advisor"
private static final java.lang.String ADVICE_REF;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "advice-ref"
private static final java.lang.String POINTCUT_REF;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "pointcut-ref"
private static final java.lang.String REF;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "ref"
private static final java.lang.String BEFORE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "before"
private static final java.lang.String DECLARE_PARENTS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "declare-parents"
private static final java.lang.String TYPE_PATTERN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "types-matching"
private static final java.lang.String DEFAULT_IMPL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "default-impl"
private static final java.lang.String DELEGATE_REF;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "delegate-ref"
private static final java.lang.String IMPLEMENT_INTERFACE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "implement-interface"
private static final java.lang.String AFTER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "after"
private static final java.lang.String AFTER_RETURNING_ELEMENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "after-returning"
private static final java.lang.String AFTER_THROWING_ELEMENT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "after-throwing"
private static final java.lang.String AROUND;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "around"
private static final java.lang.String RETURNING;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "returning"
private static final java.lang.String RETURNING_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "returningName"
private static final java.lang.String THROWING;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "throwing"
private static final java.lang.String THROWING_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "throwingName"
private static final java.lang.String ARG_NAMES;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "arg-names"
private static final java.lang.String ARG_NAMES_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "argumentNames"
private static final java.lang.String ASPECT_NAME_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "aspectName"
private static final java.lang.String DECLARATION_ORDER_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "declarationOrder"
private static final java.lang.String ORDER_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "order"
private static final int METHOD_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int POINTCUT_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int ASPECT_INSTANCE_FACTORY_INDEX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private org.springframework.beans.factory.parsing.ParseState parseState;
descriptor: Lorg/springframework/beans/factory/parsing/ParseState;
flags: (0x0002) ACC_PRIVATE
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.springframework.beans.factory.parsing.ParseState
dup
invokespecial org.springframework.beans.factory.parsing.ParseState.<init>:()V
putfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
public org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/config/BeanDefinition;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: new org.springframework.beans.factory.parsing.CompositeComponentDefinition
dup
aload 1
invokeinterface org.w3c.dom.Element.getTagName:()Ljava/lang/String;
aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokespecial org.springframework.beans.factory.parsing.CompositeComponentDefinition.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
1: astore 3
start local 3 2: aload 2
aload 3
invokevirtual org.springframework.beans.factory.xml.ParserContext.pushContainingComponent:(Lorg/springframework/beans/factory/parsing/CompositeComponentDefinition;)V
3: aload 0
aload 2
aload 1
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.configureAutoProxyCreator:(Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;)V
4: aload 1
invokestatic org.springframework.util.xml.DomUtils.getChildElements:(Lorg/w3c/dom/Element;)Ljava/util/List;
astore 4
start local 4 5: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 16
StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext org.springframework.beans.factory.parsing.CompositeComponentDefinition java.util.List top java.util.Iterator
StackMap stack:
6: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.w3c.dom.Element
astore 5
start local 5 7: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getDelegate:()Lorg/springframework/beans/factory/xml/BeanDefinitionParserDelegate;
aload 5
invokevirtual org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.getLocalName:(Lorg/w3c/dom/Node;)Ljava/lang/String;
astore 7
start local 7 8: ldc "pointcut"
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
9: aload 0
aload 5
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parsePointcut:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
pop
10: goto 16
11: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext org.springframework.beans.factory.parsing.CompositeComponentDefinition java.util.List org.w3c.dom.Element java.util.Iterator java.lang.String
StackMap stack:
ldc "advisor"
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
12: aload 0
aload 5
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parseAdvisor:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)V
13: goto 16
14: StackMap locals:
StackMap stack:
ldc "aspect"
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
15: aload 0
aload 5
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parseAspect:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)V
end local 7 end local 5 16: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext org.springframework.beans.factory.parsing.CompositeComponentDefinition java.util.List top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
17: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.popAndRegisterContainingComponent:()V
18: aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 19 1 element Lorg/w3c/dom/Element;
0 19 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
2 19 3 compositeDef Lorg/springframework/beans/factory/parsing/CompositeComponentDefinition;
5 19 4 childElts Ljava/util/List<Lorg/w3c/dom/Element;>;
7 16 5 elt Lorg/w3c/dom/Element;
8 16 7 localName Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
parserContext
private void configureAutoProxyCreator(org.springframework.beans.factory.xml.ParserContext, org.w3c.dom.Element);
descriptor: (Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokestatic org.springframework.aop.config.AopNamespaceUtils.registerAspectJAutoProxyCreatorIfNecessary:(Lorg/springframework/beans/factory/xml/ParserContext;Lorg/w3c/dom/Element;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 2 1 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
0 2 2 element Lorg/w3c/dom/Element;
MethodParameters:
Name Flags
parserContext
element
private void parseAdvisor(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.createAdvisorBeanDefinition:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
astore 3
start local 3 1: aload 1
ldc "id"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 2: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
new org.springframework.aop.config.AdvisorEntry
dup
aload 4
invokespecial org.springframework.aop.config.AdvisorEntry.<init>:(Ljava/lang/String;)V
invokevirtual org.springframework.beans.factory.parsing.ParseState.push:(Lorg/springframework/beans/factory/parsing/ParseState$Entry;)V
3: aload 4
astore 5
start local 5 4: aload 5
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 7
5: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
aload 5
aload 3
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.registerBeanDefinition:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
6: goto 8
7: StackMap locals: org.springframework.beans.factory.support.AbstractBeanDefinition java.lang.String java.lang.String
StackMap stack:
aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
aload 3
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
astore 5
8: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parsePointcutProperty:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Ljava/lang/Object;
astore 6
start local 6 9: aload 6
instanceof org.springframework.beans.factory.config.BeanDefinition
ifeq 15
10: aload 3
invokevirtual org.springframework.beans.factory.support.AbstractBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "pointcut"
aload 6
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
11: aload 2
12: new org.springframework.aop.config.AdvisorComponentDefinition
dup
aload 5
aload 3
aload 6
checkcast org.springframework.beans.factory.config.BeanDefinition
invokespecial org.springframework.aop.config.AdvisorComponentDefinition.<init>:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;Lorg/springframework/beans/factory/config/BeanDefinition;)V
13: invokevirtual org.springframework.beans.factory.xml.ParserContext.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
14: goto 24
15: StackMap locals: java.lang.Object
StackMap stack:
aload 6
instanceof java.lang.String
ifeq 24
16: aload 3
invokevirtual org.springframework.beans.factory.support.AbstractBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "pointcut"
new org.springframework.beans.factory.config.RuntimeBeanReference
dup
aload 6
checkcast java.lang.String
invokespecial org.springframework.beans.factory.config.RuntimeBeanReference.<init>:(Ljava/lang/String;)V
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
17: aload 2
18: new org.springframework.aop.config.AdvisorComponentDefinition
dup
aload 5
aload 3
invokespecial org.springframework.aop.config.AdvisorComponentDefinition.<init>:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
19: invokevirtual org.springframework.beans.factory.xml.ParserContext.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
end local 6 end local 5 20: goto 24
21: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext org.springframework.beans.factory.support.AbstractBeanDefinition java.lang.String
StackMap stack: java.lang.Throwable
astore 7
22: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
23: aload 7
athrow
24: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
25: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 26 1 advisorElement Lorg/w3c/dom/Element;
0 26 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 26 3 advisorDef Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
2 26 4 id Ljava/lang/String;
4 20 5 advisorBeanName Ljava/lang/String;
9 20 6 pointcut Ljava/lang/Object;
Exception table:
from to target type
2 21 21 any
MethodParameters:
Name Flags
advisorElement
parserContext
private org.springframework.beans.factory.support.AbstractBeanDefinition createAdvisorBeanDefinition(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/aop/support/DefaultBeanFactoryPointcutAdvisor;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 3
start local 3 1: aload 3
aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
2: aload 1
ldc "advice-ref"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 3: aload 4
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 8
4: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
5: ldc "'advice-ref' attribute contains empty value."
aload 1
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.snapshot:()Lorg/springframework/beans/factory/parsing/ParseState;
6: invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;Lorg/springframework/beans/factory/parsing/ParseState;)V
7: goto 11
8: StackMap locals: org.springframework.beans.factory.support.RootBeanDefinition java.lang.String
StackMap stack:
aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
9: ldc "adviceBeanName"
new org.springframework.beans.factory.config.RuntimeBeanNameReference
dup
aload 4
invokespecial org.springframework.beans.factory.config.RuntimeBeanNameReference.<init>:(Ljava/lang/String;)V
10: invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
11: StackMap locals:
StackMap stack:
aload 1
ldc "order"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 15
12: aload 3
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
13: ldc "order"
aload 1
ldc "order"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
14: invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
15: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 16 1 advisorElement Lorg/w3c/dom/Element;
0 16 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 16 3 advisorDefinition Lorg/springframework/beans/factory/support/RootBeanDefinition;
3 16 4 adviceRef Ljava/lang/String;
MethodParameters:
Name Flags
advisorElement
parserContext
private void parseAspect(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=15, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "id"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 1
ldc "ref"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 2: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
new org.springframework.aop.config.AspectEntry
dup
aload 3
aload 4
invokespecial org.springframework.aop.config.AspectEntry.<init>:(Ljava/lang/String;Ljava/lang/String;)V
invokevirtual org.springframework.beans.factory.parsing.ParseState.push:(Lorg/springframework/beans/factory/parsing/ParseState$Entry;)V
3: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 5
start local 5 4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 6
start local 6 5: aload 1
ldc "declare-parents"
invokestatic org.springframework.util.xml.DomUtils.getChildElementsByTagName:(Lorg/w3c/dom/Element;Ljava/lang/String;)Ljava/util/List;
astore 7
start local 7 6: iconst_0
istore 8
start local 8 7: goto 11
8: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.String java.lang.String java.util.List java.util.List java.util.List int
StackMap stack:
aload 7
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.w3c.dom.Element
astore 9
start local 9 9: aload 5
aload 0
aload 9
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parseDeclareParents:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 9 10: iinc 8 1
StackMap locals:
StackMap stack:
11: iload 8
aload 7
invokeinterface java.util.List.size:()I
if_icmplt 8
end local 8 12: aload 1
invokeinterface org.w3c.dom.Element.getChildNodes:()Lorg/w3c/dom/NodeList;
astore 8
start local 8 13: iconst_0
istore 9
start local 9 14: iconst_0
istore 10
start local 10 15: goto 33
16: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.String java.lang.String java.util.List java.util.List java.util.List org.w3c.dom.NodeList int int
StackMap stack:
aload 8
iload 10
invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
astore 11
start local 11 17: aload 0
aload 11
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.isAdviceNode:(Lorg/w3c/dom/Node;Lorg/springframework/beans/factory/xml/ParserContext;)Z
ifeq 32
18: iload 9
ifne 28
19: iconst_1
istore 9
20: aload 4
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 27
21: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
22: ldc "<aspect> tag needs aspect bean reference via 'ref' attribute when declaring advices."
23: aload 1
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.snapshot:()Lorg/springframework/beans/factory/parsing/ParseState;
24: invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;Lorg/springframework/beans/factory/parsing/ParseState;)V
25: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
26: return
27: StackMap locals: org.w3c.dom.Node
StackMap stack:
aload 6
new org.springframework.beans.factory.config.RuntimeBeanReference
dup
aload 4
invokespecial org.springframework.beans.factory.config.RuntimeBeanReference.<init>:(Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
28: StackMap locals:
StackMap stack:
aload 0
29: aload 4
iload 10
aload 1
aload 11
checkcast org.w3c.dom.Element
aload 2
aload 5
aload 6
30: invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parseAdvice:(Ljava/lang/String;ILorg/w3c/dom/Element;Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/util/List;Ljava/util/List;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
astore 12
start local 12 31: aload 5
aload 12
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 12 end local 11 32: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
33: iload 10
aload 8
invokeinterface org.w3c.dom.NodeList.getLength:()I
if_icmplt 16
end local 10 34: aload 0
35: aload 1
aload 3
aload 5
aload 6
aload 2
36: invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.createAspectComponentDefinition:(Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/aop/config/AspectComponentDefinition;
astore 10
start local 10 37: aload 2
aload 10
invokevirtual org.springframework.beans.factory.xml.ParserContext.pushContainingComponent:(Lorg/springframework/beans/factory/parsing/CompositeComponentDefinition;)V
38: aload 1
ldc "pointcut"
invokestatic org.springframework.util.xml.DomUtils.getChildElementsByTagName:(Lorg/w3c/dom/Element;Ljava/lang/String;)Ljava/util/List;
astore 11
start local 11 39: aload 11
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 42
StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.String java.lang.String java.util.List java.util.List java.util.List org.w3c.dom.NodeList int org.springframework.aop.config.AspectComponentDefinition java.util.List top java.util.Iterator
StackMap stack:
40: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.w3c.dom.Element
astore 12
start local 12 41: aload 0
aload 12
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parsePointcut:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
pop
end local 12 42: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 40
43: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.popAndRegisterContainingComponent:()V
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 44: goto 48
45: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.String java.lang.String
StackMap stack: java.lang.Throwable
astore 14
46: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
47: aload 14
athrow
48: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
49: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 50 1 aspectElement Lorg/w3c/dom/Element;
0 50 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 50 3 aspectId Ljava/lang/String;
2 50 4 aspectName Ljava/lang/String;
4 44 5 beanDefinitions Ljava/util/List<Lorg/springframework/beans/factory/config/BeanDefinition;>;
5 44 6 beanReferences Ljava/util/List<Lorg/springframework/beans/factory/config/BeanReference;>;
6 44 7 declareParents Ljava/util/List<Lorg/w3c/dom/Element;>;
7 12 8 i I
9 10 9 declareParentsElement Lorg/w3c/dom/Element;
13 44 8 nodeList Lorg/w3c/dom/NodeList;
14 44 9 adviceFoundAlready Z
15 34 10 i I
17 32 11 node Lorg/w3c/dom/Node;
31 32 12 advisorDefinition Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
37 44 10 aspectComponentDefinition Lorg/springframework/aop/config/AspectComponentDefinition;
39 44 11 pointcuts Ljava/util/List<Lorg/w3c/dom/Element;>;
41 42 12 pointcutElement Lorg/w3c/dom/Element;
Exception table:
from to target type
2 25 45 any
27 45 45 any
MethodParameters:
Name Flags
aspectElement
parserContext
private org.springframework.aop.config.AspectComponentDefinition createAspectComponentDefinition(org.w3c.dom.Element, java.lang.String, java.util.List<org.springframework.beans.factory.config.BeanDefinition>, java.util.List<org.springframework.beans.factory.config.BeanReference>, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/aop/config/AspectComponentDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 3
iconst_0
anewarray org.springframework.beans.factory.config.BeanDefinition
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.springframework.beans.factory.config.BeanDefinition[]
astore 6
start local 6 1: aload 4
iconst_0
anewarray org.springframework.beans.factory.config.BeanReference
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.springframework.beans.factory.config.BeanReference[]
astore 7
start local 7 2: aload 5
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
astore 8
start local 8 3: new org.springframework.aop.config.AspectComponentDefinition
dup
aload 2
aload 6
aload 7
aload 8
invokespecial org.springframework.aop.config.AspectComponentDefinition.<init>:(Ljava/lang/String;[Lorg/springframework/beans/factory/config/BeanDefinition;[Lorg/springframework/beans/factory/config/BeanReference;Ljava/lang/Object;)V
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 4 1 aspectElement Lorg/w3c/dom/Element;
0 4 2 aspectId Ljava/lang/String;
0 4 3 beanDefs Ljava/util/List<Lorg/springframework/beans/factory/config/BeanDefinition;>;
0 4 4 beanRefs Ljava/util/List<Lorg/springframework/beans/factory/config/BeanReference;>;
0 4 5 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 4 6 beanDefArray [Lorg/springframework/beans/factory/config/BeanDefinition;
2 4 7 beanRefArray [Lorg/springframework/beans/factory/config/BeanReference;
3 4 8 source Ljava/lang/Object;
Signature: (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/util/List<Lorg/springframework/beans/factory/config/BeanDefinition;>;Ljava/util/List<Lorg/springframework/beans/factory/config/BeanReference;>;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/aop/config/AspectComponentDefinition;
MethodParameters:
Name Flags
aspectElement
aspectId
beanDefs
beanRefs
parserContext
private boolean isAdviceNode(org.w3c.dom.Node, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Node;Lorg/springframework/beans/factory/xml/ParserContext;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof org.w3c.dom.Element
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getDelegate:()Lorg/springframework/beans/factory/xml/BeanDefinitionParserDelegate;
aload 1
invokevirtual org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.getLocalName:(Lorg/w3c/dom/Node;)Ljava/lang/String;
astore 3
start local 3 3: ldc "before"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 6
ldc "after"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 6
ldc "after-returning"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 6
4: ldc "after-throwing"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 6
ldc "around"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 6
5: iconst_0
ireturn
StackMap locals: java.lang.String
StackMap stack:
6: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 7 1 aNode Lorg/w3c/dom/Node;
0 7 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
3 7 3 name Ljava/lang/String;
MethodParameters:
Name Flags
aNode
parserContext
private org.springframework.beans.factory.support.AbstractBeanDefinition parseDeclareParents(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: ldc Lorg/springframework/aop/aspectj/DeclareParentsAdvisor;
invokestatic org.springframework.beans.factory.support.BeanDefinitionBuilder.rootBeanDefinition:(Ljava/lang/Class;)Lorg/springframework/beans/factory/support/BeanDefinitionBuilder;
astore 3
start local 3 1: aload 3
aload 1
ldc "implement-interface"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.springframework.beans.factory.support.BeanDefinitionBuilder.addConstructorArgValue:(Ljava/lang/Object;)Lorg/springframework/beans/factory/support/BeanDefinitionBuilder;
pop
2: aload 3
aload 1
ldc "types-matching"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.springframework.beans.factory.support.BeanDefinitionBuilder.addConstructorArgValue:(Ljava/lang/Object;)Lorg/springframework/beans/factory/support/BeanDefinitionBuilder;
pop
3: aload 1
ldc "default-impl"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 4: aload 1
ldc "delegate-ref"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 5: aload 4
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 8
aload 5
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 8
6: aload 3
aload 4
invokevirtual org.springframework.beans.factory.support.BeanDefinitionBuilder.addConstructorArgValue:(Ljava/lang/Object;)Lorg/springframework/beans/factory/support/BeanDefinitionBuilder;
pop
7: goto 15
8: StackMap locals: org.springframework.beans.factory.support.BeanDefinitionBuilder java.lang.String java.lang.String
StackMap stack:
aload 5
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 11
aload 4
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 11
9: aload 3
aload 5
invokevirtual org.springframework.beans.factory.support.BeanDefinitionBuilder.addConstructorArgReference:(Ljava/lang/String;)Lorg/springframework/beans/factory/support/BeanDefinitionBuilder;
pop
10: goto 15
11: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
12: ldc "Exactly one of the default-impl or delegate-ref attributes must be specified"
13: aload 1
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.snapshot:()Lorg/springframework/beans/factory/parsing/ParseState;
14: invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;Lorg/springframework/beans/factory/parsing/ParseState;)V
15: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.springframework.beans.factory.support.BeanDefinitionBuilder.getBeanDefinition:()Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
astore 6
start local 6 16: aload 6
aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.support.AbstractBeanDefinition.setSource:(Ljava/lang/Object;)V
17: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
aload 6
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
pop
18: aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 19 1 declareParentsElement Lorg/w3c/dom/Element;
0 19 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 19 3 builder Lorg/springframework/beans/factory/support/BeanDefinitionBuilder;
4 19 4 defaultImpl Ljava/lang/String;
5 19 5 delegateRef Ljava/lang/String;
16 19 6 definition Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
MethodParameters:
Name Flags
declareParentsElement
parserContext
private org.springframework.beans.factory.support.AbstractBeanDefinition parseAdvice(java.lang.String, int, org.w3c.dom.Element, org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext, java.util.List<org.springframework.beans.factory.config.BeanDefinition>, java.util.List<org.springframework.beans.factory.config.BeanReference>);
descriptor: (Ljava/lang/String;ILorg/w3c/dom/Element;Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/util/List;Ljava/util/List;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=14, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
new org.springframework.aop.config.AdviceEntry
dup
aload 5
invokevirtual org.springframework.beans.factory.xml.ParserContext.getDelegate:()Lorg/springframework/beans/factory/xml/BeanDefinitionParserDelegate;
aload 4
invokevirtual org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.getLocalName:(Lorg/w3c/dom/Node;)Ljava/lang/String;
invokespecial org.springframework.aop.config.AdviceEntry.<init>:(Ljava/lang/String;)V
invokevirtual org.springframework.beans.factory.parsing.ParseState.push:(Lorg/springframework/beans/factory/parsing/ParseState$Entry;)V
1: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/aop/config/MethodLocatingFactoryBean;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 8
start local 8 2: aload 8
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "targetBeanName"
aload 1
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
3: aload 8
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "methodName"
aload 4
ldc "method"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
4: aload 8
iconst_1
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSynthetic:(Z)V
5: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/aop/config/SimpleBeanFactoryAwareAspectInstanceFactory;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
6: astore 9
start local 9 7: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "aspectBeanName"
aload 1
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
8: aload 9
iconst_1
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSynthetic:(Z)V
9: aload 0
10: aload 4
aload 5
aload 1
iload 2
aload 8
aload 9
11: aload 6
aload 7
12: invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.createAdviceDefinition:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/String;ILorg/springframework/beans/factory/support/RootBeanDefinition;Lorg/springframework/beans/factory/support/RootBeanDefinition;Ljava/util/List;Ljava/util/List;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
astore 10
start local 10 13: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/aop/aspectj/AspectJPointcutAdvisor;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 11
start local 11 14: aload 11
aload 5
aload 4
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
15: aload 11
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getConstructorArgumentValues:()Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
aload 10
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addGenericArgumentValue:(Ljava/lang/Object;)V
16: aload 3
ldc "order"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 20
17: aload 11
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
18: ldc "order"
aload 3
ldc "order"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
19: invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
20: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser java.lang.String int org.w3c.dom.Element org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.util.List java.util.List org.springframework.beans.factory.support.RootBeanDefinition org.springframework.beans.factory.support.RootBeanDefinition org.springframework.beans.factory.support.AbstractBeanDefinition org.springframework.beans.factory.support.RootBeanDefinition
StackMap stack:
aload 5
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
aload 11
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
pop
21: aload 11
astore 13
22: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
23: aload 13
areturn
end local 11 end local 10 end local 9 end local 8 24: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser java.lang.String int org.w3c.dom.Element org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.util.List java.util.List
StackMap stack: java.lang.Throwable
astore 12
25: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
26: aload 12
athrow
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 27 1 aspectName Ljava/lang/String;
0 27 2 order I
0 27 3 aspectElement Lorg/w3c/dom/Element;
0 27 4 adviceElement Lorg/w3c/dom/Element;
0 27 5 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
0 27 6 beanDefinitions Ljava/util/List<Lorg/springframework/beans/factory/config/BeanDefinition;>;
0 27 7 beanReferences Ljava/util/List<Lorg/springframework/beans/factory/config/BeanReference;>;
2 24 8 methodDefinition Lorg/springframework/beans/factory/support/RootBeanDefinition;
7 24 9 aspectFactoryDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
13 24 10 adviceDef Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
14 24 11 advisorDefinition Lorg/springframework/beans/factory/support/RootBeanDefinition;
Exception table:
from to target type
0 22 24 any
Signature: (Ljava/lang/String;ILorg/w3c/dom/Element;Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/util/List<Lorg/springframework/beans/factory/config/BeanDefinition;>;Ljava/util/List<Lorg/springframework/beans/factory/config/BeanReference;>;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
MethodParameters:
Name Flags
aspectName
order
aspectElement
adviceElement
parserContext
beanDefinitions
beanReferences
private org.springframework.beans.factory.support.AbstractBeanDefinition createAdviceDefinition(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext, java.lang.String, int, org.springframework.beans.factory.support.RootBeanDefinition, org.springframework.beans.factory.support.RootBeanDefinition, java.util.List<org.springframework.beans.factory.config.BeanDefinition>, java.util.List<org.springframework.beans.factory.config.BeanReference>);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/String;ILorg/springframework/beans/factory/support/RootBeanDefinition;Lorg/springframework/beans/factory/support/RootBeanDefinition;Ljava/util/List;Ljava/util/List;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=13, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: new org.springframework.beans.factory.support.RootBeanDefinition
dup
aload 0
aload 1
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.getAdviceClass:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Ljava/lang/Class;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 9
start local 9 1: aload 9
aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSource:(Ljava/lang/Object;)V
2: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "aspectName"
aload 3
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
3: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "declarationOrder"
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
4: aload 1
ldc "returning"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 8
5: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
6: ldc "returningName"
aload 1
ldc "returning"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
7: invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
8: StackMap locals: org.springframework.beans.factory.support.RootBeanDefinition
StackMap stack:
aload 1
ldc "throwing"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 12
9: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
10: ldc "throwingName"
aload 1
ldc "throwing"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
11: invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
12: StackMap locals:
StackMap stack:
aload 1
ldc "arg-names"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 16
13: aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
14: ldc "argumentNames"
aload 1
ldc "arg-names"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
15: invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
16: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getConstructorArgumentValues:()Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
astore 10
start local 10 17: aload 10
iconst_0
aload 5
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
18: aload 0
aload 1
aload 2
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.parsePointcutProperty:(Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Ljava/lang/Object;
astore 11
start local 11 19: aload 11
instanceof org.springframework.beans.factory.config.BeanDefinition
ifeq 23
20: aload 10
iconst_1
aload 11
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
21: aload 7
aload 11
checkcast org.springframework.beans.factory.config.BeanDefinition
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
22: goto 27
23: StackMap locals: org.springframework.beans.factory.config.ConstructorArgumentValues java.lang.Object
StackMap stack:
aload 11
instanceof java.lang.String
ifeq 27
24: new org.springframework.beans.factory.config.RuntimeBeanReference
dup
aload 11
checkcast java.lang.String
invokespecial org.springframework.beans.factory.config.RuntimeBeanReference.<init>:(Ljava/lang/String;)V
astore 12
start local 12 25: aload 10
iconst_1
aload 12
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
26: aload 8
aload 12
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 12 27: StackMap locals:
StackMap stack:
aload 10
iconst_2
aload 6
invokevirtual org.springframework.beans.factory.config.ConstructorArgumentValues.addIndexedArgumentValue:(ILjava/lang/Object;)V
28: aload 9
areturn
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 29 1 adviceElement Lorg/w3c/dom/Element;
0 29 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
0 29 3 aspectName Ljava/lang/String;
0 29 4 order I
0 29 5 methodDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
0 29 6 aspectFactoryDef Lorg/springframework/beans/factory/support/RootBeanDefinition;
0 29 7 beanDefinitions Ljava/util/List<Lorg/springframework/beans/factory/config/BeanDefinition;>;
0 29 8 beanReferences Ljava/util/List<Lorg/springframework/beans/factory/config/BeanReference;>;
1 29 9 adviceDefinition Lorg/springframework/beans/factory/support/RootBeanDefinition;
17 29 10 cav Lorg/springframework/beans/factory/config/ConstructorArgumentValues;
19 29 11 pointcut Ljava/lang/Object;
25 27 12 pointcutRef Lorg/springframework/beans/factory/config/RuntimeBeanReference;
Signature: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;Ljava/lang/String;ILorg/springframework/beans/factory/support/RootBeanDefinition;Lorg/springframework/beans/factory/support/RootBeanDefinition;Ljava/util/List<Lorg/springframework/beans/factory/config/BeanDefinition;>;Ljava/util/List<Lorg/springframework/beans/factory/config/BeanReference;>;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
MethodParameters:
Name Flags
adviceElement
parserContext
aspectName
order
methodDef
aspectFactoryDef
beanDefinitions
beanReferences
private java.lang.Class<?> getAdviceClass(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getDelegate:()Lorg/springframework/beans/factory/xml/BeanDefinitionParserDelegate;
aload 1
invokevirtual org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.getLocalName:(Lorg/w3c/dom/Node;)Ljava/lang/String;
astore 3
start local 3 1: ldc "before"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
2: ldc Lorg/springframework/aop/aspectj/AspectJMethodBeforeAdvice;
areturn
3: StackMap locals: java.lang.String
StackMap stack:
ldc "after"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: ldc Lorg/springframework/aop/aspectj/AspectJAfterAdvice;
areturn
5: StackMap locals:
StackMap stack:
ldc "after-returning"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: ldc Lorg/springframework/aop/aspectj/AspectJAfterReturningAdvice;
areturn
7: StackMap locals:
StackMap stack:
ldc "after-throwing"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
8: ldc Lorg/springframework/aop/aspectj/AspectJAfterThrowingAdvice;
areturn
9: StackMap locals:
StackMap stack:
ldc "around"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
10: ldc Lorg/springframework/aop/aspectj/AspectJAroundAdvice;
areturn
11: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unknown advice kind ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 12 1 adviceElement Lorg/w3c/dom/Element;
0 12 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 12 3 elementName Ljava/lang/String;
Signature: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
adviceElement
parserContext
private org.springframework.beans.factory.support.AbstractBeanDefinition parsePointcut(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "id"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 1
ldc "expression"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 2: aconst_null
astore 5
start local 5 3: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
new org.springframework.aop.config.PointcutEntry
dup
aload 3
invokespecial org.springframework.aop.config.PointcutEntry.<init>:(Ljava/lang/String;)V
invokevirtual org.springframework.beans.factory.parsing.ParseState.push:(Lorg/springframework/beans/factory/parsing/ParseState$Entry;)V
4: aload 0
aload 4
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.createPointcutDefinition:(Ljava/lang/String;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
astore 5
5: aload 5
aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.support.AbstractBeanDefinition.setSource:(Ljava/lang/Object;)V
6: aload 3
astore 6
start local 6 7: aload 6
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 10
8: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getRegistry:()Lorg/springframework/beans/factory/support/BeanDefinitionRegistry;
aload 6
aload 5
invokeinterface org.springframework.beans.factory.support.BeanDefinitionRegistry.registerBeanDefinition:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;)V
9: goto 11
10: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.String java.lang.String org.springframework.beans.factory.support.AbstractBeanDefinition java.lang.String
StackMap stack:
aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
aload 5
invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.registerWithGeneratedName:(Lorg/springframework/beans/factory/config/BeanDefinition;)Ljava/lang/String;
astore 6
11: StackMap locals:
StackMap stack:
aload 2
12: new org.springframework.aop.config.PointcutComponentDefinition
dup
aload 6
aload 5
aload 4
invokespecial org.springframework.aop.config.PointcutComponentDefinition.<init>:(Ljava/lang/String;Lorg/springframework/beans/factory/config/BeanDefinition;Ljava/lang/String;)V
13: invokevirtual org.springframework.beans.factory.xml.ParserContext.registerComponent:(Lorg/springframework/beans/factory/parsing/ComponentDefinition;)V
end local 6 14: goto 18
15: StackMap locals: org.springframework.aop.config.ConfigBeanDefinitionParser org.w3c.dom.Element org.springframework.beans.factory.xml.ParserContext java.lang.String java.lang.String org.springframework.beans.factory.support.AbstractBeanDefinition
StackMap stack: java.lang.Throwable
astore 7
16: aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
17: aload 7
athrow
18: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.pop:()V
19: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 20 1 pointcutElement Lorg/w3c/dom/Element;
0 20 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
1 20 3 id Ljava/lang/String;
2 20 4 expression Ljava/lang/String;
3 20 5 pointcutDefinition Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
7 14 6 pointcutBeanName Ljava/lang/String;
Exception table:
from to target type
3 15 15 any
MethodParameters:
Name Flags
pointcutElement
parserContext
private java.lang.Object parsePointcutProperty(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext);
descriptor: (Lorg/w3c/dom/Element;Lorg/springframework/beans/factory/xml/ParserContext;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "pointcut"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 6
aload 1
ldc "pointcut-ref"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 6
1: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
2: ldc "Cannot define both 'pointcut' and 'pointcut-ref' on <advisor> tag."
3: aload 1
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.snapshot:()Lorg/springframework/beans/factory/parsing/ParseState;
4: invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;Lorg/springframework/beans/factory/parsing/ParseState;)V
5: aconst_null
areturn
6: StackMap locals:
StackMap stack:
aload 1
ldc "pointcut"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 11
7: aload 1
ldc "pointcut"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 8: aload 0
aload 3
invokevirtual org.springframework.aop.config.ConfigBeanDefinitionParser.createPointcutDefinition:(Ljava/lang/String;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
astore 4
start local 4 9: aload 4
aload 2
aload 1
invokevirtual org.springframework.beans.factory.xml.ParserContext.extractSource:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.beans.factory.support.AbstractBeanDefinition.setSource:(Ljava/lang/Object;)V
10: aload 4
areturn
end local 4 end local 3 11: StackMap locals:
StackMap stack:
aload 1
ldc "pointcut-ref"
invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
ifeq 19
12: aload 1
ldc "pointcut-ref"
invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 13: aload 3
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 18
14: aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
15: ldc "'pointcut-ref' attribute contains empty value."
aload 1
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.snapshot:()Lorg/springframework/beans/factory/parsing/ParseState;
16: invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;Lorg/springframework/beans/factory/parsing/ParseState;)V
17: aconst_null
areturn
18: StackMap locals: java.lang.String
StackMap stack:
aload 3
areturn
end local 3 19: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.springframework.beans.factory.xml.ParserContext.getReaderContext:()Lorg/springframework/beans/factory/xml/XmlReaderContext;
20: ldc "Must define one of 'pointcut' or 'pointcut-ref' on <advisor> tag."
21: aload 1
aload 0
getfield org.springframework.aop.config.ConfigBeanDefinitionParser.parseState:Lorg/springframework/beans/factory/parsing/ParseState;
invokevirtual org.springframework.beans.factory.parsing.ParseState.snapshot:()Lorg/springframework/beans/factory/parsing/ParseState;
22: invokevirtual org.springframework.beans.factory.xml.XmlReaderContext.error:(Ljava/lang/String;Ljava/lang/Object;Lorg/springframework/beans/factory/parsing/ParseState;)V
23: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 24 1 element Lorg/w3c/dom/Element;
0 24 2 parserContext Lorg/springframework/beans/factory/xml/ParserContext;
8 11 3 expression Ljava/lang/String;
9 11 4 pointcutDefinition Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
13 19 3 pointcutRef Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
parserContext
protected org.springframework.beans.factory.support.AbstractBeanDefinition createPointcutDefinition(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/springframework/beans/factory/support/AbstractBeanDefinition;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new org.springframework.beans.factory.support.RootBeanDefinition
dup
ldc Lorg/springframework/aop/aspectj/AspectJExpressionPointcut;
invokespecial org.springframework.beans.factory.support.RootBeanDefinition.<init>:(Ljava/lang/Class;)V
astore 2
start local 2 1: aload 2
ldc "prototype"
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setScope:(Ljava/lang/String;)V
2: aload 2
iconst_1
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.setSynthetic:(Z)V
3: aload 2
invokevirtual org.springframework.beans.factory.support.RootBeanDefinition.getPropertyValues:()Lorg/springframework/beans/MutablePropertyValues;
ldc "expression"
aload 1
invokevirtual org.springframework.beans.MutablePropertyValues.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/springframework/beans/MutablePropertyValues;
pop
4: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/aop/config/ConfigBeanDefinitionParser;
0 5 1 expression Ljava/lang/String;
1 5 2 beanDefinition Lorg/springframework/beans/factory/support/RootBeanDefinition;
MethodParameters:
Name Flags
expression
}
SourceFile: "ConfigBeanDefinitionParser.java"
InnerClasses:
public abstract Entry = org.springframework.beans.factory.parsing.ParseState$Entry of org.springframework.beans.factory.parsing.ParseState