public class org.springframework.web.servlet.theme.CookieThemeResolver extends org.springframework.web.util.CookieGenerator implements org.springframework.web.servlet.ThemeResolver
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.web.servlet.theme.CookieThemeResolver
super_class: org.springframework.web.util.CookieGenerator
{
public static final java.lang.String ORIGINAL_DEFAULT_THEME_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "theme"
public static final java.lang.String THEME_REQUEST_ATTRIBUTE_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.String DEFAULT_COOKIE_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private java.lang.String defaultThemeName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new java.lang.StringBuilder
dup
ldc Lorg/springframework/web/servlet/theme/CookieThemeResolver;
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 ".THEME"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic org.springframework.web.servlet.theme.CookieThemeResolver.THEME_REQUEST_ATTRIBUTE_NAME:Ljava/lang/String;
1: new java.lang.StringBuilder
dup
ldc Lorg/springframework/web/servlet/theme/CookieThemeResolver;
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 ".THEME"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic org.springframework.web.servlet.theme.CookieThemeResolver.DEFAULT_COOKIE_NAME:Ljava/lang/String;
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 org.springframework.web.util.CookieGenerator.<init>:()V
1: aload 0
ldc "theme"
putfield org.springframework.web.servlet.theme.CookieThemeResolver.defaultThemeName:Ljava/lang/String;
2: aload 0
getstatic org.springframework.web.servlet.theme.CookieThemeResolver.DEFAULT_COOKIE_NAME:Ljava/lang/String;
invokevirtual org.springframework.web.servlet.theme.CookieThemeResolver.setCookieName:(Ljava/lang/String;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/servlet/theme/CookieThemeResolver;
public void setDefaultThemeName(java.lang.String);
descriptor: (Ljava/lang/String;)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.servlet.theme.CookieThemeResolver.defaultThemeName:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/web/servlet/theme/CookieThemeResolver;
0 2 1 defaultThemeName Ljava/lang/String;
MethodParameters:
Name Flags
defaultThemeName
public java.lang.String getDefaultThemeName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.servlet.theme.CookieThemeResolver.defaultThemeName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/servlet/theme/CookieThemeResolver;
public java.lang.String resolveThemeName(javax.servlet.http.HttpServletRequest);
descriptor: (Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
getstatic org.springframework.web.servlet.theme.CookieThemeResolver.THEME_REQUEST_ATTRIBUTE_NAME:Ljava/lang/String;
invokeinterface javax.servlet.http.HttpServletRequest.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
areturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 0
invokevirtual org.springframework.web.servlet.theme.CookieThemeResolver.getCookieName:()Ljava/lang/String;
astore 3
start local 3 4: aload 3
ifnull 10
5: aload 1
aload 3
invokestatic org.springframework.web.util.WebUtils.getCookie:(Ljavax/servlet/http/HttpServletRequest;Ljava/lang/String;)Ljavax/servlet/http/Cookie;
astore 4
start local 4 6: aload 4
ifnull 10
7: aload 4
invokevirtual javax.servlet.http.Cookie.getValue:()Ljava/lang/String;
astore 5
start local 5 8: aload 5
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 10
9: aload 5
astore 2
end local 5 end local 4 10: StackMap locals: java.lang.String
StackMap stack:
aload 2
ifnonnull 12
11: aload 0
invokevirtual org.springframework.web.servlet.theme.CookieThemeResolver.getDefaultThemeName:()Ljava/lang/String;
astore 2
12: StackMap locals:
StackMap stack:
aload 1
getstatic org.springframework.web.servlet.theme.CookieThemeResolver.THEME_REQUEST_ATTRIBUTE_NAME:Ljava/lang/String;
aload 2
invokeinterface javax.servlet.http.HttpServletRequest.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
13: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/springframework/web/servlet/theme/CookieThemeResolver;
0 14 1 request Ljavax/servlet/http/HttpServletRequest;
1 14 2 themeName Ljava/lang/String;
4 14 3 cookieName Ljava/lang/String;
6 10 4 cookie Ljavax/servlet/http/Cookie;
8 10 5 value Ljava/lang/String;
MethodParameters:
Name Flags
request
public void setThemeName(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.String);
descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ldc "HttpServletResponse is required for CookieThemeResolver"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 3
invokestatic org.springframework.util.StringUtils.hasText:(Ljava/lang/String;)Z
ifeq 5
2: aload 1
getstatic org.springframework.web.servlet.theme.CookieThemeResolver.THEME_REQUEST_ATTRIBUTE_NAME:Ljava/lang/String;
aload 3
invokeinterface javax.servlet.http.HttpServletRequest.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
3: aload 0
aload 2
aload 3
invokevirtual org.springframework.web.servlet.theme.CookieThemeResolver.addCookie:(Ljavax/servlet/http/HttpServletResponse;Ljava/lang/String;)V
4: goto 7
5: StackMap locals:
StackMap stack:
aload 1
getstatic org.springframework.web.servlet.theme.CookieThemeResolver.THEME_REQUEST_ATTRIBUTE_NAME:Ljava/lang/String;
aload 0
invokevirtual org.springframework.web.servlet.theme.CookieThemeResolver.getDefaultThemeName:()Ljava/lang/String;
invokeinterface javax.servlet.http.HttpServletRequest.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
6: aload 0
aload 2
invokevirtual org.springframework.web.servlet.theme.CookieThemeResolver.removeCookie:(Ljavax/servlet/http/HttpServletResponse;)V
7: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/springframework/web/servlet/theme/CookieThemeResolver;
0 8 1 request Ljavax/servlet/http/HttpServletRequest;
0 8 2 response Ljavax/servlet/http/HttpServletResponse;
0 8 3 themeName Ljava/lang/String;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
request
response
themeName
}
SourceFile: "CookieThemeResolver.java"