public class org.apache.catalina.startup.WebAnnotationSet
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.startup.WebAnnotationSet
super_class: java.lang.Object
{
private static final java.lang.String SEPARATOR;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "/"
private static final java.lang.String MAPPED_NAME_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "mappedName"
protected static final org.apache.tomcat.util.res.StringManager sm;
descriptor: Lorg/apache/tomcat/util/res/StringManager;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "org.apache.catalina.startup"
invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/String;)Lorg/apache/tomcat/util/res/StringManager;
putstatic org.apache.catalina.startup.WebAnnotationSet.sm:Lorg/apache/tomcat/util/res/StringManager;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/startup/WebAnnotationSet;
public static void loadApplicationAnnotations(org.apache.catalina.Context);
descriptor: (Lorg/apache/catalina/Context;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadApplicationListenerAnnotations:(Lorg/apache/catalina/Context;)V
1: aload 0
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadApplicationFilterAnnotations:(Lorg/apache/catalina/Context;)V
2: aload 0
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations:(Lorg/apache/catalina/Context;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lorg/apache/catalina/Context;
MethodParameters:
Name Flags
context
protected static void loadApplicationListenerAnnotations(org.apache.catalina.Context);
descriptor: (Lorg/apache/catalina/Context;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=7, args_size=1
start local 0 0: aload 0
invokeinterface org.apache.catalina.Context.findApplicationListeners:()[Ljava/lang/String;
astore 1
start local 1 1: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 10
StackMap locals: org.apache.catalina.Context java.lang.String[] top int int java.lang.String[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 0
aload 2
invokestatic org.apache.catalina.util.Introspection.loadClass:(Lorg/apache/catalina/Context;Ljava/lang/String;)Ljava/lang/Class;
astore 6
start local 6 4: aload 6
ifnonnull 6
5: goto 9
6: StackMap locals: org.apache.catalina.Context java.lang.String[] java.lang.String int int java.lang.String[] java.lang.Class
StackMap stack:
aload 0
aload 6
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadClassAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
7: aload 0
aload 6
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
8: aload 0
aload 6
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadMethodsAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
end local 6 end local 2 9: StackMap locals: org.apache.catalina.Context java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
10: iload 3
iload 4
if_icmplt 2
11: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 context Lorg/apache/catalina/Context;
1 12 1 applicationListeners [Ljava/lang/String;
3 9 2 className Ljava/lang/String;
4 9 6 clazz Ljava/lang/Class<*>;
MethodParameters:
Name Flags
context
protected static void loadApplicationFilterAnnotations(org.apache.catalina.Context);
descriptor: (Lorg/apache/catalina/Context;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=7, args_size=1
start local 0 0: aload 0
invokeinterface org.apache.catalina.Context.findFilterDefs:()[Lorg/apache/tomcat/util/descriptor/web/FilterDef;
astore 1
start local 1 1: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 10
StackMap locals: org.apache.catalina.Context org.apache.tomcat.util.descriptor.web.FilterDef[] top int int org.apache.tomcat.util.descriptor.web.FilterDef[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 0
aload 2
invokevirtual org.apache.tomcat.util.descriptor.web.FilterDef.getFilterClass:()Ljava/lang/String;
invokestatic org.apache.catalina.util.Introspection.loadClass:(Lorg/apache/catalina/Context;Ljava/lang/String;)Ljava/lang/Class;
astore 6
start local 6 4: aload 6
ifnonnull 6
5: goto 9
6: StackMap locals: org.apache.catalina.Context org.apache.tomcat.util.descriptor.web.FilterDef[] org.apache.tomcat.util.descriptor.web.FilterDef int int org.apache.tomcat.util.descriptor.web.FilterDef[] java.lang.Class
StackMap stack:
aload 0
aload 6
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadClassAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
7: aload 0
aload 6
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
8: aload 0
aload 6
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadMethodsAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
end local 6 end local 2 9: StackMap locals: org.apache.catalina.Context org.apache.tomcat.util.descriptor.web.FilterDef[] top int int org.apache.tomcat.util.descriptor.web.FilterDef[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
10: iload 3
iload 4
if_icmplt 2
11: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 context Lorg/apache/catalina/Context;
1 12 1 filterDefs [Lorg/apache/tomcat/util/descriptor/web/FilterDef;
3 9 2 filterDef Lorg/apache/tomcat/util/descriptor/web/FilterDef;
4 9 6 clazz Ljava/lang/Class<*>;
MethodParameters:
Name Flags
context
protected static void loadApplicationServletAnnotations(org.apache.catalina.Context);
descriptor: (Lorg/apache/catalina/Context;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=5, locals=10, args_size=1
start local 0 0: aload 0
invokeinterface org.apache.catalina.Context.findChildren:()[Lorg/apache/catalina/Container;
astore 1
start local 1 1: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 23
StackMap locals: org.apache.catalina.Context org.apache.catalina.Container[] top int int org.apache.catalina.Container[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 2
instanceof org.apache.catalina.Wrapper
ifeq 22
4: aload 2
checkcast org.apache.catalina.Wrapper
astore 6
start local 6 5: aload 6
invokeinterface org.apache.catalina.Wrapper.getServletClass:()Ljava/lang/String;
ifnonnull 7
6: goto 22
7: StackMap locals: org.apache.catalina.Context org.apache.catalina.Container[] org.apache.catalina.Container int int org.apache.catalina.Container[] org.apache.catalina.Wrapper
StackMap stack:
aload 0
aload 6
invokeinterface org.apache.catalina.Wrapper.getServletClass:()Ljava/lang/String;
invokestatic org.apache.catalina.util.Introspection.loadClass:(Lorg/apache/catalina/Context;Ljava/lang/String;)Ljava/lang/Class;
astore 7
start local 7 8: aload 7
ifnonnull 10
9: goto 22
10: StackMap locals: java.lang.Class
StackMap stack:
aload 0
aload 7
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadClassAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
11: aload 0
aload 7
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
12: aload 0
aload 7
invokestatic org.apache.catalina.startup.WebAnnotationSet.loadMethodsAnnotation:(Lorg/apache/catalina/Context;Ljava/lang/Class;)V
13: aload 7
ldc Ljakarta/annotation/security/RunAs;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast jakarta.annotation.security.RunAs
astore 8
start local 8 14: aload 8
ifnull 16
15: aload 6
aload 8
invokeinterface jakarta.annotation.security.RunAs.value:()Ljava/lang/String;
invokeinterface org.apache.catalina.Wrapper.setRunAs:(Ljava/lang/String;)V
16: StackMap locals: jakarta.annotation.security.RunAs
StackMap stack:
aload 7
ldc Ljakarta/servlet/annotation/ServletSecurity;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast jakarta.servlet.annotation.ServletSecurity
astore 9
start local 9 17: aload 9
ifnull 22
18: aload 0
19: new org.apache.catalina.core.ApplicationServletRegistration
dup
aload 6
aload 0
invokespecial org.apache.catalina.core.ApplicationServletRegistration.<init>:(Lorg/apache/catalina/Wrapper;Lorg/apache/catalina/Context;)V
20: new jakarta.servlet.ServletSecurityElement
dup
aload 9
invokespecial jakarta.servlet.ServletSecurityElement.<init>:(Ljakarta/servlet/annotation/ServletSecurity;)V
21: invokeinterface org.apache.catalina.Context.addServletSecurity:(Ljakarta/servlet/ServletRegistration$Dynamic;Ljakarta/servlet/ServletSecurityElement;)Ljava/util/Set;
pop
end local 9 end local 8 end local 7 end local 6 end local 2 22: StackMap locals: org.apache.catalina.Context org.apache.catalina.Container[] top int int org.apache.catalina.Container[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
23: iload 3
iload 4
if_icmplt 2
24: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 context Lorg/apache/catalina/Context;
1 25 1 children [Lorg/apache/catalina/Container;
3 22 2 child Lorg/apache/catalina/Container;
5 22 6 wrapper Lorg/apache/catalina/Wrapper;
8 22 7 clazz Ljava/lang/Class<*>;
14 22 8 runAs Ljakarta/annotation/security/RunAs;
17 22 9 servletSecurity Ljakarta/servlet/annotation/ServletSecurity;
MethodParameters:
Name Flags
context
protected static void loadClassAnnotation(org.apache.catalina.Context, java.lang.Class<?>);
descriptor: (Lorg/apache/catalina/Context;Ljava/lang/Class;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=9, args_size=2
start local 0 start local 1 0: aload 1
ldc Ljakarta/annotation/Resource;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast jakarta.annotation.Resource
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 0
aload 2
invokestatic org.apache.catalina.startup.WebAnnotationSet.addResource:(Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;)V
3: StackMap locals: jakarta.annotation.Resource
StackMap stack:
aload 1
ldc Ljakarta/annotation/Resources;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast jakarta.annotation.Resources
astore 3
start local 3 4: aload 3
ifnull 10
aload 3
invokeinterface jakarta.annotation.Resources.value:()[Ljakarta/annotation/Resource;
ifnull 10
5: aload 3
invokeinterface jakarta.annotation.Resources.value:()[Ljakarta/annotation/Resource;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 9
StackMap locals: org.apache.catalina.Context java.lang.Class jakarta.annotation.Resource jakarta.annotation.Resources top int int jakarta.annotation.Resource[]
StackMap stack:
6: aload 7
iload 5
aaload
astore 4
start local 4 7: aload 0
aload 4
invokestatic org.apache.catalina.startup.WebAnnotationSet.addResource:(Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;)V
end local 4 8: iinc 5 1
StackMap locals:
StackMap stack:
9: iload 5
iload 6
if_icmplt 6
10: StackMap locals: org.apache.catalina.Context java.lang.Class jakarta.annotation.Resource jakarta.annotation.Resources
StackMap stack:
aload 1
ldc Ljakarta/annotation/security/DeclareRoles;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast jakarta.annotation.security.DeclareRoles
astore 4
start local 4 11: aload 4
ifnull 17
aload 4
invokeinterface jakarta.annotation.security.DeclareRoles.value:()[Ljava/lang/String;
ifnull 17
12: aload 4
invokeinterface jakarta.annotation.security.DeclareRoles.value:()[Ljava/lang/String;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 16
StackMap locals: org.apache.catalina.Context java.lang.Class jakarta.annotation.Resource jakarta.annotation.Resources jakarta.annotation.security.DeclareRoles top int int java.lang.String[]
StackMap stack:
13: aload 8
iload 6
aaload
astore 5
start local 5 14: aload 0
aload 5
invokeinterface org.apache.catalina.Context.addSecurityRole:(Ljava/lang/String;)V
end local 5 15: iinc 6 1
StackMap locals:
StackMap stack:
16: iload 6
iload 7
if_icmplt 13
17: StackMap locals: org.apache.catalina.Context java.lang.Class jakarta.annotation.Resource jakarta.annotation.Resources jakarta.annotation.security.DeclareRoles
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 context Lorg/apache/catalina/Context;
0 18 1 clazz Ljava/lang/Class<*>;
1 18 2 resourceAnnotation Ljakarta/annotation/Resource;
4 18 3 resourcesAnnotation Ljakarta/annotation/Resources;
7 8 4 resource Ljakarta/annotation/Resource;
11 18 4 declareRolesAnnotation Ljakarta/annotation/security/DeclareRoles;
14 15 5 role Ljava/lang/String;
Signature: (Lorg/apache/catalina/Context;Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
context
clazz
protected static void loadFieldsAnnotation(org.apache.catalina.Context, java.lang.Class<?>);
descriptor: (Lorg/apache/catalina/Context;Ljava/lang/Class;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.apache.catalina.util.Introspection.getDeclaredFields:(Ljava/lang/Class;)[Ljava/lang/reflect/Field;
astore 2
start local 2 1: aload 2
ifnull 11
aload 2
arraylength
ifle 11
2: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 10
StackMap locals: org.apache.catalina.Context java.lang.Class java.lang.reflect.Field[] top int int java.lang.reflect.Field[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 3
ldc Ljakarta/annotation/Resource;
invokevirtual java.lang.reflect.Field.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast jakarta.annotation.Resource
astore 7
start local 7 5: aload 7
ifnull 9
6: new java.lang.StringBuilder
dup
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
start local 8 7: aload 3
invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
astore 9
start local 9 8: aload 0
aload 7
aload 8
aload 9
invokestatic org.apache.catalina.startup.WebAnnotationSet.addResource:(Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;Ljava/lang/String;Ljava/lang/Class;)V
end local 9 end local 8 end local 7 end local 3 9: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
iload 5
if_icmplt 3
11: StackMap locals: org.apache.catalina.Context java.lang.Class java.lang.reflect.Field[]
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 context Lorg/apache/catalina/Context;
0 12 1 clazz Ljava/lang/Class<*>;
1 12 2 fields [Ljava/lang/reflect/Field;
4 9 3 field Ljava/lang/reflect/Field;
5 9 7 annotation Ljakarta/annotation/Resource;
7 9 8 defaultName Ljava/lang/String;
8 9 9 defaultType Ljava/lang/Class<*>;
Signature: (Lorg/apache/catalina/Context;Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
context
clazz
protected static void loadMethodsAnnotation(org.apache.catalina.Context, java.lang.Class<?>);
descriptor: (Lorg/apache/catalina/Context;Ljava/lang/Class;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.apache.catalina.util.Introspection.getDeclaredMethods:(Ljava/lang/Class;)[Ljava/lang/reflect/Method;
astore 2
start local 2 1: aload 2
ifnull 17
aload 2
arraylength
ifle 17
2: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 16
StackMap locals: org.apache.catalina.Context java.lang.Class java.lang.reflect.Method[] top int int java.lang.reflect.Method[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 3
ldc Ljakarta/annotation/Resource;
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast jakarta.annotation.Resource
astore 7
start local 7 5: aload 7
ifnull 15
6: aload 3
invokestatic org.apache.catalina.util.Introspection.isValidSetter:(Ljava/lang/reflect/Method;)Z
ifne 10
7: new java.lang.IllegalArgumentException
dup
getstatic org.apache.catalina.startup.WebAnnotationSet.sm:Lorg/apache/tomcat/util/res/StringManager;
8: ldc "webAnnotationSet.invalidInjection"
9: invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals: org.apache.catalina.Context java.lang.Class java.lang.reflect.Method[] java.lang.reflect.Method int int java.lang.reflect.Method[] jakarta.annotation.Resource
StackMap stack:
new java.lang.StringBuilder
dup
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: aload 3
invokestatic org.apache.catalina.util.Introspection.getPropertyName:(Ljava/lang/reflect/Method;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
start local 8 13: aload 3
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
iconst_0
aaload
astore 9
start local 9 14: aload 0
aload 7
aload 8
aload 9
invokestatic org.apache.catalina.startup.WebAnnotationSet.addResource:(Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;Ljava/lang/String;Ljava/lang/Class;)V
end local 9 end local 8 end local 7 end local 3 15: StackMap locals: org.apache.catalina.Context java.lang.Class java.lang.reflect.Method[] top int int java.lang.reflect.Method[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
16: iload 4
iload 5
if_icmplt 3
17: StackMap locals: org.apache.catalina.Context java.lang.Class java.lang.reflect.Method[]
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 context Lorg/apache/catalina/Context;
0 18 1 clazz Ljava/lang/Class<*>;
1 18 2 methods [Ljava/lang/reflect/Method;
4 15 3 method Ljava/lang/reflect/Method;
5 15 7 annotation Ljakarta/annotation/Resource;
13 15 8 defaultName Ljava/lang/String;
14 15 9 defaultType Ljava/lang/Class<*>;
Signature: (Lorg/apache/catalina/Context;Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
context
clazz
protected static void addResource(org.apache.catalina.Context, jakarta.annotation.Resource);
descriptor: (Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
aconst_null
invokestatic org.apache.catalina.startup.WebAnnotationSet.addResource:(Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;Ljava/lang/String;Ljava/lang/Class;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 context Lorg/apache/catalina/Context;
0 2 1 annotation Ljakarta/annotation/Resource;
MethodParameters:
Name Flags
context
annotation
protected static void addResource(org.apache.catalina.Context, jakarta.annotation.Resource, java.lang.String, java.lang.Class<?>);
descriptor: (Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;Ljava/lang/String;Ljava/lang/Class;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
invokestatic org.apache.catalina.startup.WebAnnotationSet.getName:(Ljakarta/annotation/Resource;Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 1: aload 1
aload 3
invokestatic org.apache.catalina.startup.WebAnnotationSet.getType:(Ljakarta/annotation/Resource;Ljava/lang/Class;)Ljava/lang/String;
astore 5
start local 5 2: aload 5
ldc "java.lang.String"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
3: aload 5
ldc "java.lang.Character"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
4: aload 5
ldc "java.lang.Integer"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
5: aload 5
ldc "java.lang.Boolean"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
6: aload 5
ldc "java.lang.Double"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
7: aload 5
ldc "java.lang.Byte"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
8: aload 5
ldc "java.lang.Short"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
9: aload 5
ldc "java.lang.Long"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
10: aload 5
ldc "java.lang.Float"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
11: StackMap locals: java.lang.String java.lang.String
StackMap stack:
new org.apache.tomcat.util.descriptor.web.ContextEnvironment
dup
invokespecial org.apache.tomcat.util.descriptor.web.ContextEnvironment.<init>:()V
astore 6
start local 6 12: aload 6
aload 4
invokevirtual org.apache.tomcat.util.descriptor.web.ContextEnvironment.setName:(Ljava/lang/String;)V
13: aload 6
aload 5
invokevirtual org.apache.tomcat.util.descriptor.web.ContextEnvironment.setType:(Ljava/lang/String;)V
14: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.description:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextEnvironment.setDescription:(Ljava/lang/String;)V
15: aload 6
ldc "mappedName"
aload 1
invokeinterface jakarta.annotation.Resource.mappedName:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextEnvironment.setProperty:(Ljava/lang/String;Ljava/lang/Object;)V
16: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.lookup:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextEnvironment.setLookupName:(Ljava/lang/String;)V
17: aload 0
invokeinterface org.apache.catalina.Context.getNamingResources:()Lorg/apache/catalina/deploy/NamingResourcesImpl;
aload 6
invokevirtual org.apache.catalina.deploy.NamingResourcesImpl.addEnvironment:(Lorg/apache/tomcat/util/descriptor/web/ContextEnvironment;)V
end local 6 18: goto 70
StackMap locals:
StackMap stack:
19: aload 5
ldc "javax.xml.rpc.Service"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
20: new org.apache.tomcat.util.descriptor.web.ContextService
dup
invokespecial org.apache.tomcat.util.descriptor.web.ContextService.<init>:()V
astore 6
start local 6 21: aload 6
aload 4
invokevirtual org.apache.tomcat.util.descriptor.web.ContextService.setName:(Ljava/lang/String;)V
22: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.mappedName:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextService.setWsdlfile:(Ljava/lang/String;)V
23: aload 6
aload 5
invokevirtual org.apache.tomcat.util.descriptor.web.ContextService.setType:(Ljava/lang/String;)V
24: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.description:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextService.setDescription:(Ljava/lang/String;)V
25: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.lookup:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextService.setLookupName:(Ljava/lang/String;)V
26: aload 0
invokeinterface org.apache.catalina.Context.getNamingResources:()Lorg/apache/catalina/deploy/NamingResourcesImpl;
aload 6
invokevirtual org.apache.catalina.deploy.NamingResourcesImpl.addService:(Lorg/apache/tomcat/util/descriptor/web/ContextService;)V
end local 6 27: goto 70
StackMap locals:
StackMap stack:
28: aload 5
ldc "javax.sql.DataSource"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
29: aload 5
ldc "javax.jms.ConnectionFactory"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
30: aload 5
ldc "javax.jms.QueueConnectionFactory"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
31: aload 5
ldc "javax.jms.TopicConnectionFactory"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
32: aload 5
ldc "jakarta.mail.Session"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
33: aload 5
ldc "java.net.URL"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
34: aload 5
ldc "javax.resource.cci.ConnectionFactory"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
35: aload 5
ldc "org.omg.CORBA_2_3.ORB"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
36: aload 5
ldc "ConnectionFactory"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 53
37: StackMap locals:
StackMap stack:
new org.apache.tomcat.util.descriptor.web.ContextResource
dup
invokespecial org.apache.tomcat.util.descriptor.web.ContextResource.<init>:()V
astore 6
start local 6 38: aload 6
aload 4
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setName:(Ljava/lang/String;)V
39: aload 6
aload 5
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setType:(Ljava/lang/String;)V
40: aload 1
invokeinterface jakarta.annotation.Resource.authenticationType:()Ljakarta/annotation/Resource$AuthenticationType;
getstatic jakarta.annotation.Resource$AuthenticationType.CONTAINER:Ljakarta/annotation/Resource$AuthenticationType;
if_acmpne 43
41: aload 6
ldc "Container"
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setAuth:(Ljava/lang/String;)V
42: goto 45
StackMap locals: org.apache.tomcat.util.descriptor.web.ContextResource
StackMap stack:
43: aload 1
invokeinterface jakarta.annotation.Resource.authenticationType:()Ljakarta/annotation/Resource$AuthenticationType;
getstatic jakarta.annotation.Resource$AuthenticationType.APPLICATION:Ljakarta/annotation/Resource$AuthenticationType;
if_acmpne 45
44: aload 6
ldc "Application"
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setAuth:(Ljava/lang/String;)V
45: StackMap locals:
StackMap stack:
aload 6
aload 1
invokeinterface jakarta.annotation.Resource.shareable:()Z
ifeq 46
ldc "Shareable"
goto 47
StackMap locals:
StackMap stack: org.apache.tomcat.util.descriptor.web.ContextResource
46: ldc "Unshareable"
StackMap locals: org.apache.catalina.Context jakarta.annotation.Resource java.lang.String java.lang.Class java.lang.String java.lang.String org.apache.tomcat.util.descriptor.web.ContextResource
StackMap stack: org.apache.tomcat.util.descriptor.web.ContextResource java.lang.String
47: invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setScope:(Ljava/lang/String;)V
48: aload 6
ldc "mappedName"
aload 1
invokeinterface jakarta.annotation.Resource.mappedName:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setProperty:(Ljava/lang/String;Ljava/lang/Object;)V
49: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.description:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setDescription:(Ljava/lang/String;)V
50: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.lookup:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResource.setLookupName:(Ljava/lang/String;)V
51: aload 0
invokeinterface org.apache.catalina.Context.getNamingResources:()Lorg/apache/catalina/deploy/NamingResourcesImpl;
aload 6
invokevirtual org.apache.catalina.deploy.NamingResourcesImpl.addResource:(Lorg/apache/tomcat/util/descriptor/web/ContextResource;)V
end local 6 52: goto 70
StackMap locals:
StackMap stack:
53: aload 5
ldc "javax.jms.Queue"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 55
54: aload 5
ldc "javax.jms.Topic"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 63
55: StackMap locals:
StackMap stack:
new org.apache.tomcat.util.descriptor.web.MessageDestinationRef
dup
invokespecial org.apache.tomcat.util.descriptor.web.MessageDestinationRef.<init>:()V
astore 6
start local 6 56: aload 6
aload 4
invokevirtual org.apache.tomcat.util.descriptor.web.MessageDestinationRef.setName:(Ljava/lang/String;)V
57: aload 6
aload 5
invokevirtual org.apache.tomcat.util.descriptor.web.MessageDestinationRef.setType:(Ljava/lang/String;)V
58: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.mappedName:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.MessageDestinationRef.setUsage:(Ljava/lang/String;)V
59: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.description:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.MessageDestinationRef.setDescription:(Ljava/lang/String;)V
60: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.lookup:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.MessageDestinationRef.setLookupName:(Ljava/lang/String;)V
61: aload 0
invokeinterface org.apache.catalina.Context.getNamingResources:()Lorg/apache/catalina/deploy/NamingResourcesImpl;
aload 6
invokevirtual org.apache.catalina.deploy.NamingResourcesImpl.addMessageDestinationRef:(Lorg/apache/tomcat/util/descriptor/web/MessageDestinationRef;)V
end local 6 62: goto 70
63: StackMap locals:
StackMap stack:
new org.apache.tomcat.util.descriptor.web.ContextResourceEnvRef
dup
invokespecial org.apache.tomcat.util.descriptor.web.ContextResourceEnvRef.<init>:()V
astore 6
start local 6 64: aload 6
aload 4
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResourceEnvRef.setName:(Ljava/lang/String;)V
65: aload 6
aload 5
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResourceEnvRef.setType:(Ljava/lang/String;)V
66: aload 6
ldc "mappedName"
aload 1
invokeinterface jakarta.annotation.Resource.mappedName:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResourceEnvRef.setProperty:(Ljava/lang/String;Ljava/lang/Object;)V
67: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.description:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResourceEnvRef.setDescription:(Ljava/lang/String;)V
68: aload 6
aload 1
invokeinterface jakarta.annotation.Resource.lookup:()Ljava/lang/String;
invokevirtual org.apache.tomcat.util.descriptor.web.ContextResourceEnvRef.setLookupName:(Ljava/lang/String;)V
69: aload 0
invokeinterface org.apache.catalina.Context.getNamingResources:()Lorg/apache/catalina/deploy/NamingResourcesImpl;
aload 6
invokevirtual org.apache.catalina.deploy.NamingResourcesImpl.addResourceEnvRef:(Lorg/apache/tomcat/util/descriptor/web/ContextResourceEnvRef;)V
end local 6 70: StackMap locals:
StackMap stack:
return
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 71 0 context Lorg/apache/catalina/Context;
0 71 1 annotation Ljakarta/annotation/Resource;
0 71 2 defaultName Ljava/lang/String;
0 71 3 defaultType Ljava/lang/Class<*>;
1 71 4 name Ljava/lang/String;
2 71 5 type Ljava/lang/String;
12 18 6 resource Lorg/apache/tomcat/util/descriptor/web/ContextEnvironment;
21 27 6 service Lorg/apache/tomcat/util/descriptor/web/ContextService;
38 52 6 resource Lorg/apache/tomcat/util/descriptor/web/ContextResource;
56 62 6 resource Lorg/apache/tomcat/util/descriptor/web/MessageDestinationRef;
64 70 6 resource Lorg/apache/tomcat/util/descriptor/web/ContextResourceEnvRef;
Signature: (Lorg/apache/catalina/Context;Ljakarta/annotation/Resource;Ljava/lang/String;Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
context
annotation
defaultName
defaultType
private static java.lang.String getType(jakarta.annotation.Resource, java.lang.Class<?>);
descriptor: (Ljakarta/annotation/Resource;Ljava/lang/Class;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface jakarta.annotation.Resource.type:()Ljava/lang/Class;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
ldc Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
2: StackMap locals: java.lang.Class
StackMap stack:
aload 1
ifnull 4
3: aload 1
astore 2
4: StackMap locals:
StackMap stack:
aload 2
invokestatic org.apache.catalina.util.Introspection.convertPrimitiveType:(Ljava/lang/Class;)Ljava/lang/Class;
invokevirtual java.lang.Class.getCanonicalName:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 annotation Ljakarta/annotation/Resource;
0 5 1 defaultType Ljava/lang/Class<*>;
1 5 2 type Ljava/lang/Class<*>;
Signature: (Ljakarta/annotation/Resource;Ljava/lang/Class<*>;)Ljava/lang/String;
MethodParameters:
Name Flags
annotation
defaultType
private static java.lang.String getName(jakarta.annotation.Resource, java.lang.String);
descriptor: (Ljakarta/annotation/Resource;Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface jakarta.annotation.Resource.name:()Ljava/lang/String;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
2: StackMap locals: java.lang.String
StackMap stack:
aload 1
ifnull 4
3: aload 1
astore 2
4: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 annotation Ljakarta/annotation/Resource;
0 5 1 defaultName Ljava/lang/String;
1 5 2 name Ljava/lang/String;
MethodParameters:
Name Flags
annotation
defaultName
}
SourceFile: "WebAnnotationSet.java"
InnerClasses:
public final AuthenticationType = jakarta.annotation.Resource$AuthenticationType of jakarta.annotation.Resource
public abstract Dynamic = jakarta.servlet.ServletRegistration$Dynamic of jakarta.servlet.ServletRegistration