public class javax.servlet.ServletSecurityElement extends javax.servlet.HttpConstraintElement
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: javax.servlet.ServletSecurityElement
super_class: javax.servlet.HttpConstraintElement
{
private final java.util.Map<java.lang.String, javax.servlet.HttpMethodConstraintElement> methodConstraints;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljavax/servlet/HttpMethodConstraintElement;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial javax.servlet.HttpConstraintElement.<init>:()V
1: aload 0
2: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield javax.servlet.ServletSecurityElement.methodConstraints:Ljava/util/Map;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/servlet/ServletSecurityElement;
public void <init>(javax.servlet.HttpConstraintElement);
descriptor: (Ljavax/servlet/HttpConstraintElement;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokespecial javax.servlet.ServletSecurityElement.<init>:(Ljavax/servlet/HttpConstraintElement;Ljava/util/Collection;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavax/servlet/ServletSecurityElement;
0 2 1 httpConstraintElement Ljavax/servlet/HttpConstraintElement;
MethodParameters:
Name Flags
httpConstraintElement
public void <init>(java.util.Collection<javax.servlet.HttpMethodConstraintElement>);
descriptor: (Ljava/util/Collection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial javax.servlet.HttpConstraintElement.<init>:()V
1: aload 0
2: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield javax.servlet.ServletSecurityElement.methodConstraints:Ljava/util/Map;
3: aload 0
aload 1
invokevirtual javax.servlet.ServletSecurityElement.addHttpMethodConstraints:(Ljava/util/Collection;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavax/servlet/ServletSecurityElement;
0 5 1 httpMethodConstraints Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;
Signature: (Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;)V
MethodParameters:
Name Flags
httpMethodConstraints
public void <init>(javax.servlet.HttpConstraintElement, java.util.Collection<javax.servlet.HttpMethodConstraintElement>);
descriptor: (Ljavax/servlet/HttpConstraintElement;Ljava/util/Collection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual javax.servlet.HttpConstraintElement.getEmptyRoleSemantic:()Ljavax/servlet/annotation/ServletSecurity$EmptyRoleSemantic;
1: aload 1
invokevirtual javax.servlet.HttpConstraintElement.getTransportGuarantee:()Ljavax/servlet/annotation/ServletSecurity$TransportGuarantee;
2: aload 1
invokevirtual javax.servlet.HttpConstraintElement.getRolesAllowed:()[Ljava/lang/String;
invokespecial javax.servlet.HttpConstraintElement.<init>:(Ljavax/servlet/annotation/ServletSecurity$EmptyRoleSemantic;Ljavax/servlet/annotation/ServletSecurity$TransportGuarantee;[Ljava/lang/String;)V
3: aload 0
4: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield javax.servlet.ServletSecurityElement.methodConstraints:Ljava/util/Map;
5: aload 0
aload 2
invokevirtual javax.servlet.ServletSecurityElement.addHttpMethodConstraints:(Ljava/util/Collection;)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavax/servlet/ServletSecurityElement;
0 7 1 httpConstraintElement Ljavax/servlet/HttpConstraintElement;
0 7 2 httpMethodConstraints Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;
Signature: (Ljavax/servlet/HttpConstraintElement;Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;)V
MethodParameters:
Name Flags
httpConstraintElement
httpMethodConstraints
public void <init>(javax.servlet.annotation.ServletSecurity);
descriptor: (Ljavax/servlet/annotation/ServletSecurity;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=6, args_size=2
start local 0 start local 1 0: aload 0
new javax.servlet.HttpConstraintElement
dup
aload 1
invokeinterface javax.servlet.annotation.ServletSecurity.value:()Ljavax/servlet/annotation/HttpConstraint;
invokeinterface javax.servlet.annotation.HttpConstraint.value:()Ljavax/servlet/annotation/ServletSecurity$EmptyRoleSemantic;
1: aload 1
invokeinterface javax.servlet.annotation.ServletSecurity.value:()Ljavax/servlet/annotation/HttpConstraint;
invokeinterface javax.servlet.annotation.HttpConstraint.transportGuarantee:()Ljavax/servlet/annotation/ServletSecurity$TransportGuarantee;
2: aload 1
invokeinterface javax.servlet.annotation.ServletSecurity.value:()Ljavax/servlet/annotation/HttpConstraint;
invokeinterface javax.servlet.annotation.HttpConstraint.rolesAllowed:()[Ljava/lang/String;
3: invokespecial javax.servlet.HttpConstraintElement.<init>:(Ljavax/servlet/annotation/ServletSecurity$EmptyRoleSemantic;Ljavax/servlet/annotation/ServletSecurity$TransportGuarantee;[Ljava/lang/String;)V
invokespecial javax.servlet.ServletSecurityElement.<init>:(Ljavax/servlet/HttpConstraintElement;)V
4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 5: aload 1
invokeinterface javax.servlet.annotation.ServletSecurity.httpMethodConstraints:()[Ljavax/servlet/annotation/HttpMethodConstraint;
astore 3
start local 3 6: aload 3
ifnull 20
7: iconst_0
istore 4
start local 4 8: goto 19
9: StackMap locals: javax.servlet.ServletSecurityElement javax.servlet.annotation.ServletSecurity java.util.List javax.servlet.annotation.HttpMethodConstraint[] int
StackMap stack:
new javax.servlet.HttpMethodConstraintElement
dup
aload 3
iload 4
aaload
invokeinterface javax.servlet.annotation.HttpMethodConstraint.value:()Ljava/lang/String;
10: new javax.servlet.HttpConstraintElement
dup
11: aload 3
iload 4
aaload
invokeinterface javax.servlet.annotation.HttpMethodConstraint.emptyRoleSemantic:()Ljavax/servlet/annotation/ServletSecurity$EmptyRoleSemantic;
12: aload 3
iload 4
aaload
invokeinterface javax.servlet.annotation.HttpMethodConstraint.transportGuarantee:()Ljavax/servlet/annotation/ServletSecurity$TransportGuarantee;
13: aload 3
iload 4
aaload
invokeinterface javax.servlet.annotation.HttpMethodConstraint.rolesAllowed:()[Ljava/lang/String;
14: invokespecial javax.servlet.HttpConstraintElement.<init>:(Ljavax/servlet/annotation/ServletSecurity$EmptyRoleSemantic;Ljavax/servlet/annotation/ServletSecurity$TransportGuarantee;[Ljava/lang/String;)V
15: invokespecial javax.servlet.HttpMethodConstraintElement.<init>:(Ljava/lang/String;Ljavax/servlet/HttpConstraintElement;)V
16: astore 5
start local 5 17: aload 2
aload 5
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 18: iinc 4 1
StackMap locals:
StackMap stack:
19: iload 4
aload 3
arraylength
if_icmplt 9
end local 4 20: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual javax.servlet.ServletSecurityElement.addHttpMethodConstraints:(Ljava/util/Collection;)V
21: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Ljavax/servlet/ServletSecurityElement;
0 22 1 annotation Ljavax/servlet/annotation/ServletSecurity;
5 22 2 l Ljava/util/List<Ljavax/servlet/HttpMethodConstraintElement;>;
6 22 3 constraints [Ljavax/servlet/annotation/HttpMethodConstraint;
8 20 4 i I
17 18 5 e Ljavax/servlet/HttpMethodConstraintElement;
MethodParameters:
Name Flags
annotation
public java.util.Collection<javax.servlet.HttpMethodConstraintElement> getHttpMethodConstraints();
descriptor: ()Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
getfield javax.servlet.ServletSecurityElement.methodConstraints:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
pop
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/servlet/ServletSecurityElement;
1 3 1 result Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;
Signature: ()Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;
public java.util.Collection<java.lang.String> getMethodNames();
descriptor: ()Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
getfield javax.servlet.ServletSecurityElement.methodConstraints:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
pop
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/servlet/ServletSecurityElement;
1 3 1 result Ljava/util/Collection<Ljava/lang/String;>;
Signature: ()Ljava/util/Collection<Ljava/lang/String;>;
private void addHttpMethodConstraints(java.util.Collection<javax.servlet.HttpMethodConstraintElement>);
descriptor: (Ljava/util/Collection;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 10
StackMap locals: javax.servlet.ServletSecurityElement java.util.Collection top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.servlet.HttpMethodConstraintElement
astore 2
start local 2 4: aload 2
invokevirtual javax.servlet.HttpMethodConstraintElement.getMethodName:()Ljava/lang/String;
astore 4
start local 4 5: aload 0
getfield javax.servlet.ServletSecurityElement.methodConstraints:Ljava/util/Map;
aload 4
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 9
6: new java.lang.IllegalArgumentException
dup
7: new java.lang.StringBuilder
dup
ldc "Duplicate method name: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: javax.servlet.ServletSecurityElement java.util.Collection javax.servlet.HttpMethodConstraintElement java.util.Iterator java.lang.String
StackMap stack:
aload 0
getfield javax.servlet.ServletSecurityElement.methodConstraints:Ljava/util/Map;
aload 4
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 end local 2 10: StackMap locals: javax.servlet.ServletSecurityElement java.util.Collection top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
11: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljavax/servlet/ServletSecurityElement;
0 12 1 httpMethodConstraints Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;
4 10 2 constraint Ljavax/servlet/HttpMethodConstraintElement;
5 10 4 method Ljava/lang/String;
Signature: (Ljava/util/Collection<Ljavax/servlet/HttpMethodConstraintElement;>;)V
MethodParameters:
Name Flags
httpMethodConstraints
}
SourceFile: "ServletSecurityElement.java"
InnerClasses:
public final EmptyRoleSemantic = javax.servlet.annotation.ServletSecurity$EmptyRoleSemantic of javax.servlet.annotation.ServletSecurity
public final TransportGuarantee = javax.servlet.annotation.ServletSecurity$TransportGuarantee of javax.servlet.annotation.ServletSecurity