public class org.springframework.web.cors.CorsConfiguration
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.web.cors.CorsConfiguration
super_class: java.lang.Object
{
public static final java.lang.String ALL;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "*"
private static final java.util.List<java.lang.String> ALL_LIST;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private static final org.springframework.web.cors.CorsConfiguration$OriginPattern ALL_PATTERN;
descriptor: Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.List<org.springframework.web.cors.CorsConfiguration$OriginPattern> ALL_PATTERN_LIST;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;
private static final java.util.List<java.lang.String> DEFAULT_PERMIT_ALL;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private static final java.util.List<org.springframework.http.HttpMethod> DEFAULT_METHODS;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Lorg/springframework/http/HttpMethod;>;
private static final java.util.List<java.lang.String> DEFAULT_PERMIT_METHODS;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private java.util.List<java.lang.String> allowedOrigins;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.List<org.springframework.web.cors.CorsConfiguration$OriginPattern> allowedOriginPatterns;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.List<java.lang.String> allowedMethods;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.List<org.springframework.http.HttpMethod> resolvedMethods;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lorg/springframework/http/HttpMethod;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.List<java.lang.String> ;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.List<java.lang.String> ;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.lang.Boolean allowCredentials;
descriptor: Ljava/lang/Boolean;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.lang.Long maxAge;
descriptor: Ljava/lang/Long;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc "*"
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
1: invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putstatic org.springframework.web.cors.CorsConfiguration.ALL_LIST:Ljava/util/List;
2: new org.springframework.web.cors.CorsConfiguration$OriginPattern
dup
ldc "*"
invokespecial org.springframework.web.cors.CorsConfiguration$OriginPattern.<init>:(Ljava/lang/String;)V
putstatic org.springframework.web.cors.CorsConfiguration.ALL_PATTERN:Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;
3: getstatic org.springframework.web.cors.CorsConfiguration.ALL_PATTERN:Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
4: invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putstatic org.springframework.web.cors.CorsConfiguration.ALL_PATTERN_LIST:Ljava/util/List;
5: ldc "*"
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
6: invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
7: iconst_2
anewarray org.springframework.http.HttpMethod
dup
iconst_0
8: getstatic org.springframework.http.HttpMethod.GET:Lorg/springframework/http/HttpMethod;
aastore
dup
iconst_1
getstatic org.springframework.http.HttpMethod.HEAD:Lorg/springframework/http/HttpMethod;
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
9: invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_METHODS:Ljava/util/List;
10: iconst_3
anewarray java.lang.String
dup
iconst_0
11: getstatic org.springframework.http.HttpMethod.GET:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.name:()Ljava/lang/String;
aastore
dup
iconst_1
getstatic org.springframework.http.HttpMethod.HEAD:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.name:()Ljava/lang/String;
aastore
dup
iconst_2
getstatic org.springframework.http.HttpMethod.POST:Lorg/springframework/http/HttpMethod;
invokevirtual org.springframework.http.HttpMethod.name:()Ljava/lang/String;
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
12: invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_METHODS:Ljava/util/List;
13: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_METHODS:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/web/cors/CorsConfiguration;
public void <init>(org.springframework.web.cors.CorsConfiguration);
descriptor: (Lorg/springframework/web/cors/CorsConfiguration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_METHODS:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
2: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
3: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
4: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
5: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
6: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
7: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.exposedHeaders:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.exposedHeaders:Ljava/util/List;
8: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.allowCredentials:Ljava/lang/Boolean;
putfield org.springframework.web.cors.CorsConfiguration.allowCredentials:Ljava/lang/Boolean;
9: aload 0
aload 1
getfield org.springframework.web.cors.CorsConfiguration.maxAge:Ljava/lang/Long;
putfield org.springframework.web.cors.CorsConfiguration.maxAge:Ljava/lang/Long;
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 11 1 other Lorg/springframework/web/cors/CorsConfiguration;
MethodParameters:
Name Flags
other
public void setAllowedOrigins(java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ifnull 1
new java.util.ArrayList
dup
aload 1
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
goto 2
StackMap locals:
StackMap stack: org.springframework.web.cors.CorsConfiguration
1: aconst_null
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List
StackMap stack: org.springframework.web.cors.CorsConfiguration java.util.ArrayList
2: putfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 4 1 allowedOrigins Ljava/util/List<Ljava/lang/String;>;
Signature: (Ljava/util/List<Ljava/lang/String;>;)V
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
allowedOrigins
public java.util.List<java.lang.String> getAllowedOrigins();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/cors/CorsConfiguration;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void addAllowedOrigin(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
ifnonnull 3
1: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
2: goto 5
3: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
if_acmpne 5
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
invokestatic org.springframework.util.CollectionUtils.isEmpty:(Ljava/util/Collection;)Z
ifeq 5
4: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.setAllowedOrigins:(Ljava/util/List;)V
5: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 7 1 origin Ljava/lang/String;
MethodParameters:
Name Flags
origin
public org.springframework.web.cors.CorsConfiguration setAllowedOriginPatterns(java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;)Lorg/springframework/web/cors/CorsConfiguration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 3
1: aload 0
aconst_null
putfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
2: goto 8
3: StackMap locals:
StackMap stack:
aload 0
new java.util.ArrayList
dup
aload 1
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
4: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 7
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List top java.util.Iterator
StackMap stack:
5: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 6: aload 0
aload 2
invokevirtual org.springframework.web.cors.CorsConfiguration.addAllowedOriginPattern:(Ljava/lang/String;)V
end local 2 7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
8: StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 9 1 allowedOriginPatterns Ljava/util/List<Ljava/lang/String;>;
6 7 2 patternValue Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/lang/String;>;)Lorg/springframework/web/cors/CorsConfiguration;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
allowedOriginPatterns
public java.util.List<java.lang.String> getAllowedOriginPatterns();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
3: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/web/cors/CorsConfiguration$OriginPattern.getDeclaredPattern()Ljava/lang/String; (5)
(Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
4: invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.List
5: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/web/cors/CorsConfiguration;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void addAllowedOriginPattern(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
ifnonnull 2
1: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
new org.springframework.web.cors.CorsConfiguration$OriginPattern
dup
aload 1
invokespecial org.springframework.web.cors.CorsConfiguration$OriginPattern.<init>:(Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
if_acmpne 5
4: aload 0
aconst_null
putfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 6 1 originPattern Ljava/lang/String;
MethodParameters:
Name Flags
originPattern
public void setAllowedMethods(java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ifnull 1
new java.util.ArrayList
dup
aload 1
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
goto 2
StackMap locals:
StackMap stack: org.springframework.web.cors.CorsConfiguration
1: aconst_null
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List
StackMap stack: org.springframework.web.cors.CorsConfiguration java.util.ArrayList
2: putfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
3: aload 1
invokestatic org.springframework.util.CollectionUtils.isEmpty:(Ljava/util/Collection;)Z
ifne 13
4: aload 0
new java.util.ArrayList
dup
aload 1
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
5: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 11
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List top java.util.Iterator
StackMap stack:
6: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 7: ldc "*"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
8: aload 0
aconst_null
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
9: goto 14
10: StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List java.lang.String java.util.Iterator
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
aload 2
invokestatic org.springframework.http.HttpMethod.resolve:(Ljava/lang/String;)Lorg/springframework/http/HttpMethod;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 2 11: StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
12: goto 14
13: StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List
StackMap stack:
aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_METHODS:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
14: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 15 1 allowedMethods Ljava/util/List<Ljava/lang/String;>;
7 11 2 method Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/lang/String;>;)V
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
allowedMethods
public java.util.List<java.lang.String> getAllowedMethods();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/cors/CorsConfiguration;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void addAllowedMethod(org.springframework.http.HttpMethod);
descriptor: (Lorg/springframework/http/HttpMethod;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.springframework.http.HttpMethod.name:()Ljava/lang/String;
invokevirtual org.springframework.web.cors.CorsConfiguration.addAllowedMethod:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 2 1 method Lorg/springframework/http/HttpMethod;
MethodParameters:
Name Flags
method
public void addAllowedMethod(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 13
1: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
ifnonnull 5
2: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
3: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
4: goto 7
5: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_METHODS:Ljava/util/List;
if_acmpne 7
6: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_METHODS:Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.setAllowedMethods:(Ljava/util/List;)V
7: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: ldc "*"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
9: aload 0
aconst_null
putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
10: goto 13
11: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
ifnull 13
12: aload 0
getfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
aload 1
invokestatic org.springframework.http.HttpMethod.resolve:(Ljava/lang/String;)Lorg/springframework/http/HttpMethod;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 14 1 method Ljava/lang/String;
MethodParameters:
Name Flags
method
public void setAllowedHeaders(java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ifnull 1
new java.util.ArrayList
dup
aload 1
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
goto 2
StackMap locals:
StackMap stack: org.springframework.web.cors.CorsConfiguration
1: aconst_null
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List
StackMap stack: org.springframework.web.cors.CorsConfiguration java.util.ArrayList
2: putfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 4 1 allowedHeaders Ljava/util/List<Ljava/lang/String;>;
Signature: (Ljava/util/List<Ljava/lang/String;>;)V
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
allowedHeaders
public java.util.List<java.lang.String> getAllowedHeaders();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/cors/CorsConfiguration;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void (java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
ifnonnull 3
1: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
2: goto 5
3: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
if_acmpne 5
4: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.setAllowedHeaders:(Ljava/util/List;)V
5: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 7 1 allowedHeader Ljava/lang/String;
MethodParameters:
Name Flags
allowedHeader
public void setExposedHeaders(java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ifnull 1
new java.util.ArrayList
dup
aload 1
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
goto 2
StackMap locals:
StackMap stack: org.springframework.web.cors.CorsConfiguration
1: aconst_null
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List
StackMap stack: org.springframework.web.cors.CorsConfiguration java.util.ArrayList
2: putfield org.springframework.web.cors.CorsConfiguration.exposedHeaders:Ljava/util/List;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 4 1 exposedHeaders Ljava/util/List<Ljava/lang/String;>;
Signature: (Ljava/util/List<Ljava/lang/String;>;)V
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
exposedHeaders
public java.util.List<java.lang.String> getExposedHeaders();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.exposedHeaders:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/cors/CorsConfiguration;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void (java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.exposedHeaders:Ljava/util/List;
ifnonnull 2
1: aload 0
new java.util.ArrayList
dup
iconst_4
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.springframework.web.cors.CorsConfiguration.exposedHeaders:Ljava/util/List;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.exposedHeaders:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 4 1 exposedHeader Ljava/lang/String;
MethodParameters:
Name Flags
exposedHeader
public void setAllowCredentials(java.lang.Boolean);
descriptor: (Ljava/lang/Boolean;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.web.cors.CorsConfiguration.allowCredentials:Ljava/lang/Boolean;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 2 1 allowCredentials Ljava/lang/Boolean;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
allowCredentials
public java.lang.Boolean getAllowCredentials();
descriptor: ()Ljava/lang/Boolean;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowCredentials:Ljava/lang/Boolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/cors/CorsConfiguration;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void setMaxAge(java.time.Duration);
descriptor: (Ljava/time/Duration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.time.Duration.getSeconds:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
putfield org.springframework.web.cors.CorsConfiguration.maxAge:Ljava/lang/Long;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 2 1 maxAge Ljava/time/Duration;
MethodParameters:
Name Flags
maxAge
public void setMaxAge(java.lang.Long);
descriptor: (Ljava/lang/Long;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.web.cors.CorsConfiguration.maxAge:Ljava/lang/Long;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 2 1 maxAge Ljava/lang/Long;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
maxAge
public java.lang.Long getMaxAge();
descriptor: ()Ljava/lang/Long;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.maxAge:Ljava/lang/Long;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/cors/CorsConfiguration;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public org.springframework.web.cors.CorsConfiguration applyPermitDefaultValues();
descriptor: ()Lorg/springframework/web/cors/CorsConfiguration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
ifnonnull 2
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
ifnonnull 2
1: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
ifnonnull 7
3: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_METHODS:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.allowedMethods:Ljava/util/List;
4: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_METHODS:Ljava/util/List;
5: invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/http/HttpMethod.resolve(Ljava/lang/String;)Lorg/springframework/http/HttpMethod; (6)
(Ljava/lang/String;)Lorg/springframework/http/HttpMethod;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.List
6: putfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
7: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
ifnonnull 9
8: aload 0
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
putfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
9: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.maxAge:Ljava/lang/Long;
ifnonnull 11
10: aload 0
ldc 1800
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
putfield org.springframework.web.cors.CorsConfiguration.maxAge:Ljava/lang/Long;
11: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/springframework/web/cors/CorsConfiguration;
public void validateAllowCredentials();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowCredentials:Ljava/lang/Boolean;
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
if_acmpne 5
1: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
ifnull 5
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
ldc "*"
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 5
2: new java.lang.IllegalArgumentException
dup
3: ldc "When allowCredentials is true, allowedOrigins cannot contain the special value \"*\"since that cannot be set on the \"Access-Control-Allow-Origin\" response header. To allow credentials to a set of origins, list them explicitly or consider using \"allowedOriginPatterns\" instead."
4: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/web/cors/CorsConfiguration;
public org.springframework.web.cors.CorsConfiguration combine(org.springframework.web.cors.CorsConfiguration);
descriptor: (Lorg/springframework/web/cors/CorsConfiguration;)Lorg/springframework/web/cors/CorsConfiguration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new org.springframework.web.cors.CorsConfiguration
dup
aload 0
invokespecial org.springframework.web.cors.CorsConfiguration.<init>:(Lorg/springframework/web/cors/CorsConfiguration;)V
astore 2
start local 2 3: aload 0
aload 0
invokevirtual org.springframework.web.cors.CorsConfiguration.getAllowedOrigins:()Ljava/util/List;
aload 1
invokevirtual org.springframework.web.cors.CorsConfiguration.getAllowedOrigins:()Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.combine:(Ljava/util/List;Ljava/util/List;)Ljava/util/List;
astore 3
start local 3 4: aload 0
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
aload 1
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.combinePatterns:(Ljava/util/List;Ljava/util/List;)Ljava/util/List;
astore 4
start local 4 5: aload 2
aload 3
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
if_acmpne 6
aload 4
invokestatic org.springframework.util.CollectionUtils.isEmpty:(Ljava/util/Collection;)Z
ifne 6
aconst_null
goto 7
StackMap locals: org.springframework.web.cors.CorsConfiguration org.springframework.web.cors.CorsConfiguration org.springframework.web.cors.CorsConfiguration java.util.List java.util.List
StackMap stack: org.springframework.web.cors.CorsConfiguration
6: aload 3
StackMap locals: org.springframework.web.cors.CorsConfiguration org.springframework.web.cors.CorsConfiguration org.springframework.web.cors.CorsConfiguration java.util.List java.util.List
StackMap stack: org.springframework.web.cors.CorsConfiguration java.util.List
7: putfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
8: aload 2
aload 4
putfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
9: aload 2
aload 0
aload 0
invokevirtual org.springframework.web.cors.CorsConfiguration.getAllowedMethods:()Ljava/util/List;
aload 1
invokevirtual org.springframework.web.cors.CorsConfiguration.getAllowedMethods:()Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.combine:(Ljava/util/List;Ljava/util/List;)Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.setAllowedMethods:(Ljava/util/List;)V
10: aload 2
aload 0
aload 0
invokevirtual org.springframework.web.cors.CorsConfiguration.getAllowedHeaders:()Ljava/util/List;
aload 1
invokevirtual org.springframework.web.cors.CorsConfiguration.getAllowedHeaders:()Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.combine:(Ljava/util/List;Ljava/util/List;)Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.setAllowedHeaders:(Ljava/util/List;)V
11: aload 2
aload 0
aload 0
invokevirtual org.springframework.web.cors.CorsConfiguration.getExposedHeaders:()Ljava/util/List;
aload 1
invokevirtual org.springframework.web.cors.CorsConfiguration.getExposedHeaders:()Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.combine:(Ljava/util/List;Ljava/util/List;)Ljava/util/List;
invokevirtual org.springframework.web.cors.CorsConfiguration.setExposedHeaders:(Ljava/util/List;)V
12: aload 1
invokevirtual org.springframework.web.cors.CorsConfiguration.getAllowCredentials:()Ljava/lang/Boolean;
astore 5
start local 5 13: aload 5
ifnull 15
14: aload 2
aload 5
invokevirtual org.springframework.web.cors.CorsConfiguration.setAllowCredentials:(Ljava/lang/Boolean;)V
15: StackMap locals: java.lang.Boolean
StackMap stack:
aload 1
invokevirtual org.springframework.web.cors.CorsConfiguration.getMaxAge:()Ljava/lang/Long;
astore 6
start local 6 16: aload 6
ifnull 18
17: aload 2
aload 6
invokevirtual org.springframework.web.cors.CorsConfiguration.setMaxAge:(Ljava/lang/Long;)V
18: StackMap locals: java.lang.Long
StackMap stack:
aload 2
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/web/cors/CorsConfiguration;
0 19 1 other Lorg/springframework/web/cors/CorsConfiguration;
3 19 2 config Lorg/springframework/web/cors/CorsConfiguration;
4 19 3 origins Ljava/util/List<Ljava/lang/String;>;
5 19 4 patterns Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;
13 19 5 allowCredentials Ljava/lang/Boolean;
16 19 6 maxAge Ljava/lang/Long;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
other
private java.util.List<java.lang.String> combine(java.util.List<java.lang.String>, java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 4
1: aload 1
ifnull 2
aload 1
goto 3
StackMap locals:
StackMap stack:
2: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
StackMap locals:
StackMap stack: java.util.List
3: areturn
4: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
5: aload 2
areturn
6: StackMap locals:
StackMap stack:
aload 1
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
if_acmpeq 7
aload 1
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_METHODS:Ljava/util/List;
if_acmpne 8
7: StackMap locals:
StackMap stack:
aload 2
areturn
8: StackMap locals:
StackMap stack:
aload 2
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_ALL:Ljava/util/List;
if_acmpeq 9
aload 2
getstatic org.springframework.web.cors.CorsConfiguration.DEFAULT_PERMIT_METHODS:Ljava/util/List;
if_acmpne 10
9: StackMap locals:
StackMap stack:
aload 1
areturn
10: StackMap locals:
StackMap stack:
aload 1
ldc "*"
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 11
aload 2
ldc "*"
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 12
11: StackMap locals:
StackMap stack:
getstatic org.springframework.web.cors.CorsConfiguration.ALL_LIST:Ljava/util/List;
areturn
12: StackMap locals:
StackMap stack:
new java.util.LinkedHashSet
dup
aload 1
invokeinterface java.util.List.size:()I
aload 2
invokeinterface java.util.List.size:()I
iadd
invokespecial java.util.LinkedHashSet.<init>:(I)V
astore 3
start local 3 13: aload 3
aload 1
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
14: aload 3
aload 2
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
15: new java.util.ArrayList
dup
aload 3
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 16 1 source Ljava/util/List<Ljava/lang/String;>;
0 16 2 other Ljava/util/List<Ljava/lang/String;>;
13 16 3 combined Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;)Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
source
other
private java.util.List<org.springframework.web.cors.CorsConfiguration$OriginPattern> combinePatterns(java.util.List<org.springframework.web.cors.CorsConfiguration$OriginPattern>, java.util.List<org.springframework.web.cors.CorsConfiguration$OriginPattern>);
descriptor: (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 4
1: aload 1
ifnull 2
aload 1
goto 3
StackMap locals:
StackMap stack:
2: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
StackMap locals:
StackMap stack: java.util.List
3: areturn
4: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
5: aload 2
areturn
6: StackMap locals:
StackMap stack:
aload 1
getstatic org.springframework.web.cors.CorsConfiguration.ALL_PATTERN:Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 7
aload 2
getstatic org.springframework.web.cors.CorsConfiguration.ALL_PATTERN:Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 8
7: StackMap locals:
StackMap stack:
getstatic org.springframework.web.cors.CorsConfiguration.ALL_PATTERN_LIST:Ljava/util/List;
areturn
8: StackMap locals:
StackMap stack:
new java.util.LinkedHashSet
dup
aload 1
invokeinterface java.util.List.size:()I
aload 2
invokeinterface java.util.List.size:()I
iadd
invokespecial java.util.LinkedHashSet.<init>:(I)V
astore 3
start local 3 9: aload 3
aload 1
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
10: aload 3
aload 2
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
11: new java.util.ArrayList
dup
aload 3
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 12 1 source Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;
0 12 2 other Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;
9 12 3 combined Ljava/util/Set<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;
Signature: (Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;)Ljava/util/List<Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;>;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
source
other
public java.lang.String checkOrigin(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
invokestatic org.springframework.util.ObjectUtils.isEmpty:(Ljava/lang/Object;)Z
ifne 11
3: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
ldc "*"
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 6
4: aload 0
invokevirtual org.springframework.web.cors.CorsConfiguration.validateAllowCredentials:()V
5: ldc "*"
areturn
6: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOrigins:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 10
StackMap locals: org.springframework.web.cors.CorsConfiguration java.lang.String top java.util.Iterator
StackMap stack:
7: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 8: aload 1
aload 2
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 10
9: aload 1
areturn
end local 2 10: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
11: StackMap locals: org.springframework.web.cors.CorsConfiguration java.lang.String
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
invokestatic org.springframework.util.ObjectUtils.isEmpty:(Ljava/lang/Object;)Z
ifne 17
12: aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedOriginPatterns:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 16
StackMap locals: org.springframework.web.cors.CorsConfiguration java.lang.String top java.util.Iterator
StackMap stack:
13: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.springframework.web.cors.CorsConfiguration$OriginPattern
astore 2
start local 2 14: aload 2
invokevirtual org.springframework.web.cors.CorsConfiguration$OriginPattern.getDeclaredPattern:()Ljava/lang/String;
ldc "*"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
aload 2
invokevirtual org.springframework.web.cors.CorsConfiguration$OriginPattern.getPattern:()Ljava/util/regex/Pattern;
aload 1
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.matches:()Z
ifeq 16
15: StackMap locals: org.springframework.web.cors.CorsConfiguration java.lang.String org.springframework.web.cors.CorsConfiguration$OriginPattern java.util.Iterator
StackMap stack:
aload 1
areturn
end local 2 16: StackMap locals: org.springframework.web.cors.CorsConfiguration java.lang.String top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
17: StackMap locals: org.springframework.web.cors.CorsConfiguration java.lang.String
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 18 1 requestOrigin Ljava/lang/String;
8 10 2 allowedOrigin Ljava/lang/String;
14 16 2 p Lorg/springframework/web/cors/CorsConfiguration$OriginPattern;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
requestOrigin
public java.util.List<org.springframework.http.HttpMethod> checkHttpMethod(org.springframework.http.HttpMethod);
descriptor: (Lorg/springframework/http/HttpMethod;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
ifnonnull 4
3: aload 1
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
aload 1
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 5
aload 0
getfield org.springframework.web.cors.CorsConfiguration.resolvedMethods:Ljava/util/List;
goto 6
StackMap locals:
StackMap stack:
5: aconst_null
StackMap locals:
StackMap stack: java.util.List
6: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 7 1 requestMethod Lorg/springframework/http/HttpMethod;
Signature: (Lorg/springframework/http/HttpMethod;)Ljava/util/List<Lorg/springframework/http/HttpMethod;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
requestMethod
public java.util.List<java.lang.String> checkHeaders(java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.List.isEmpty:()Z
ifeq 4
3: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
invokestatic org.springframework.util.ObjectUtils.isEmpty:(Ljava/lang/Object;)Z
ifeq 6
5: aconst_null
areturn
6: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
ldc "*"
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
istore 2
start local 2 7: new java.util.ArrayList
dup
aload 1
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 8: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 21
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List int java.util.List top java.util.Iterator
StackMap stack:
9: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 10: aload 4
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 21
11: aload 4
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 4
12: iload 2
ifeq 15
13: aload 3
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: goto 21
15: StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List int java.util.List java.lang.String java.util.Iterator
StackMap stack:
aload 0
getfield org.springframework.web.cors.CorsConfiguration.allowedHeaders:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 20
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List int java.util.List java.lang.String java.util.Iterator top java.util.Iterator
StackMap stack:
16: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 17: aload 4
aload 6
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 20
18: aload 3
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
19: goto 21
end local 6 20: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
end local 4 21: StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List int java.util.List top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
22: aload 3
invokeinterface java.util.List.isEmpty:()Z
ifeq 23
aconst_null
goto 24
StackMap locals: org.springframework.web.cors.CorsConfiguration java.util.List int java.util.List
StackMap stack:
23: aload 3
StackMap locals:
StackMap stack: java.util.List
24: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/springframework/web/cors/CorsConfiguration;
0 25 1 requestHeaders Ljava/util/List<Ljava/lang/String;>;
7 25 2 allowAnyHeader Z
8 25 3 result Ljava/util/List<Ljava/lang/String;>;
10 21 4 requestHeader Ljava/lang/String;
17 20 6 allowedHeader Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/lang/String;>;)Ljava/util/List<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
requestHeaders
}
SourceFile: "CorsConfiguration.java"
NestMembers:
org.springframework.web.cors.CorsConfiguration$OriginPattern
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
private OriginPattern = org.springframework.web.cors.CorsConfiguration$OriginPattern of org.springframework.web.cors.CorsConfiguration