final class org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule extends org.apache.tomcat.util.digester.CallMethodRule
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule
super_class: org.apache.tomcat.util.digester.CallMethodRule
{
private final boolean postConstruct;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(java.lang.String, int, boolean);
descriptor: (Ljava/lang/String;IZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 // org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule this
start local 1 // java.lang.String methodName
start local 2 // int paramCount
start local 3 // boolean postConstruct
0: .line 1457
aload 0 /* this */
aload 1 /* methodName */
iload 2 /* paramCount */
invokespecial org.apache.tomcat.util.digester.CallMethodRule.<init>:(Ljava/lang/String;I)V
1: .line 1458
aload 0 /* this */
iload 3 /* postConstruct */
putfield org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule.postConstruct:Z
2: .line 1459
return
end local 3 // boolean postConstruct
end local 2 // int paramCount
end local 1 // java.lang.String methodName
end local 0 // org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/tomcat/util/descriptor/web/LifecycleCallbackRule;
0 3 1 methodName Ljava/lang/String;
0 3 2 paramCount I
0 3 3 postConstruct Z
MethodParameters:
Name Flags
methodName
paramCount
postConstruct
public void end(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=5, args_size=3
start local 0 // org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule this
start local 1 // java.lang.String namespace
start local 2 // java.lang.String name
0: .line 1463
aload 0 /* this */
getfield org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule.digester:Lorg/apache/tomcat/util/digester/Digester;
invokevirtual org.apache.tomcat.util.digester.Digester.peekParams:()Ljava/lang/Object;
checkcast java.lang.Object[]
astore 3 /* params */
start local 3 // java.lang.Object[] params
1: .line 1464
aload 3 /* params */
ifnull 12
aload 3 /* params */
arraylength
iconst_2
if_icmpne 12
2: .line 1465
aload 0 /* this */
getfield org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule.digester:Lorg/apache/tomcat/util/digester/Digester;
invokevirtual org.apache.tomcat.util.digester.Digester.peek:()Ljava/lang/Object;
checkcast org.apache.tomcat.util.descriptor.web.WebXml
astore 4 /* webXml */
start local 4 // org.apache.tomcat.util.descriptor.web.WebXml webXml
3: .line 1466
aload 0 /* this */
getfield org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule.postConstruct:Z
ifeq 8
4: .line 1467
aload 4 /* webXml */
invokevirtual org.apache.tomcat.util.descriptor.web.WebXml.getPostConstructMethods:()Ljava/util/Map;
aload 3 /* params */
iconst_0
aaload
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 12
5: .line 1468
new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.descriptor.web.WebRuleSet.sm:Lorg/apache/tomcat/util/res/StringManager;
6: .line 1469
ldc "webRuleSet.postconstruct.duplicate"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3 /* params */
iconst_0
aaload
aastore
7: .line 1468
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: .line 1472
StackMap locals: java.lang.Object[] org.apache.tomcat.util.descriptor.web.WebXml
StackMap stack:
aload 4 /* webXml */
invokevirtual org.apache.tomcat.util.descriptor.web.WebXml.getPreDestroyMethods:()Ljava/util/Map;
aload 3 /* params */
iconst_0
aaload
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 12
9: .line 1473
new java.lang.IllegalArgumentException
dup
getstatic org.apache.tomcat.util.descriptor.web.WebRuleSet.sm:Lorg/apache/tomcat/util/res/StringManager;
10: .line 1474
ldc "webRuleSet.predestroy.duplicate"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3 /* params */
iconst_0
aaload
aastore
11: .line 1473
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 4 // org.apache.tomcat.util.descriptor.web.WebXml webXml
12: .line 1478
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* namespace */
aload 2 /* name */
invokespecial org.apache.tomcat.util.digester.CallMethodRule.end:(Ljava/lang/String;Ljava/lang/String;)V
13: .line 1479
return
end local 3 // java.lang.Object[] params
end local 2 // java.lang.String name
end local 1 // java.lang.String namespace
end local 0 // org.apache.tomcat.util.descriptor.web.LifecycleCallbackRule this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/tomcat/util/descriptor/web/LifecycleCallbackRule;
0 14 1 namespace Ljava/lang/String;
0 14 2 name Ljava/lang/String;
1 14 3 params [Ljava/lang/Object;
3 12 4 webXml Lorg/apache/tomcat/util/descriptor/web/WebXml;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
namespace
name
}
SourceFile: "WebRuleSet.java"