public class org.springframework.web.context.request.ServletWebRequest extends org.springframework.web.context.request.ServletRequestAttributes implements org.springframework.web.context.request.NativeWebRequest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.web.context.request.ServletWebRequest
super_class: org.springframework.web.context.request.ServletRequestAttributes
{
private static final java.lang.String ETAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "ETag"
private static final java.lang.String IF_MODIFIED_SINCE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "If-Modified-Since"
private static final java.lang.String IF_UNMODIFIED_SINCE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "If-Unmodified-Since"
private static final java.lang.String IF_NONE_MATCH;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "If-None-Match"
private static final java.lang.String LAST_MODIFIED;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Last-Modified"
private static final java.util.List<java.lang.String> SAFE_METHODS;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private static final java.util.regex.Pattern ;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String[] DATE_FORMATS;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.TimeZone GMT;
descriptor: Ljava/util/TimeZone;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private boolean notModified;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "GET"
aastore
dup
iconst_1
ldc "HEAD"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
putstatic org.springframework.web.context.request.ServletWebRequest.SAFE_METHODS:Ljava/util/List;
1: ldc "\\*|\\s*((W\\/)?(\"[^\"]*\"))\\s*,?"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic org.springframework.web.context.request.ServletWebRequest.ETAG_HEADER_VALUE_PATTERN:Ljava/util/regex/Pattern;
2: iconst_3
anewarray java.lang.String
dup
iconst_0
3: ldc "EEE, dd MMM yyyy HH:mm:ss zzz"
aastore
dup
iconst_1
4: ldc "EEE, dd-MMM-yy HH:mm:ss zzz"
aastore
dup
iconst_2
5: ldc "EEE MMM dd HH:mm:ss yyyy"
aastore
6: putstatic org.springframework.web.context.request.ServletWebRequest.DATE_FORMATS:[Ljava/lang/String;
7: ldc "GMT"
invokestatic java.util.TimeZone.getTimeZone:(Ljava/lang/String;)Ljava/util/TimeZone;
putstatic org.springframework.web.context.request.ServletWebRequest.GMT:Ljava/util/TimeZone;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(javax.servlet.http.HttpServletRequest);
descriptor: (Ljavax/servlet/http/HttpServletRequest;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.springframework.web.context.request.ServletRequestAttributes.<init>:(Ljavax/servlet/http/HttpServletRequest;)V
1: aload 0
iconst_0
putfield org.springframework.web.context.request.ServletWebRequest.notModified:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 3 1 request Ljavax/servlet/http/HttpServletRequest;
MethodParameters:
Name Flags
request
public void <init>(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.springframework.web.context.request.ServletRequestAttributes.<init>:(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
1: aload 0
iconst_0
putfield org.springframework.web.context.request.ServletWebRequest.notModified:Z
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 3 1 request Ljavax/servlet/http/HttpServletRequest;
0 3 2 response Ljavax/servlet/http/HttpServletResponse;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
request
response
public java.lang.Object getNativeRequest();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
public java.lang.Object getNativeResponse();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getResponse:()Ljavax/servlet/http/HttpServletResponse;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
public <T> T getNativeRequest(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
aload 1
invokestatic org.springframework.web.util.WebUtils.getNativeRequest:(Ljavax/servlet/ServletRequest;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 1 1 requiredType Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
requiredType
public <T> T getNativeResponse(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getResponse:()Ljavax/servlet/http/HttpServletResponse;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
aload 1
invokestatic org.springframework.web.util.WebUtils.getNativeResponse:(Ljavax/servlet/ServletResponse;Ljava/lang/Class;)Ljava/lang/Object;
goto 3
StackMap locals: javax.servlet.http.HttpServletResponse
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 4 1 requiredType Ljava/lang/Class<TT;>;
1 4 2 response Ljavax/servlet/http/HttpServletResponse;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
requiredType
public org.springframework.http.HttpMethod getHttpMethod();
descriptor: ()Lorg/springframework/http/HttpMethod;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getMethod:()Ljava/lang/String;
invokestatic org.springframework.http.HttpMethod.resolve:(Ljava/lang/String;)Lorg/springframework/http/HttpMethod;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public java.lang.String (java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
aload 1
invokeinterface javax.servlet.http.HttpServletRequest.getHeader:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 1 1 headerName Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
headerName
public java.lang.String[] (java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
aload 1
invokeinterface javax.servlet.http.HttpServletRequest.getHeaders:(Ljava/lang/String;)Ljava/util/Enumeration;
invokestatic org.springframework.util.StringUtils.toStringArray:(Ljava/util/Enumeration;)[Ljava/lang/String;
astore 2
start local 2 1: aload 2
invokestatic org.springframework.util.ObjectUtils.isEmpty:([Ljava/lang/Object;)Z
ifne 2
aload 2
goto 3
StackMap locals: java.lang.String[]
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.lang.String[]
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 4 1 headerName Ljava/lang/String;
1 4 2 headerValues [Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
headerName
public java.util.Iterator<java.lang.String> getHeaderNames();
descriptor: ()Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getHeaderNames:()Ljava/util/Enumeration;
invokestatic org.springframework.util.CollectionUtils.toIterator:(Ljava/util/Enumeration;)Ljava/util/Iterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
Signature: ()Ljava/util/Iterator<Ljava/lang/String;>;
public java.lang.String getParameter(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
aload 1
invokeinterface javax.servlet.http.HttpServletRequest.getParameter:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 1 1 paramName Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
paramName
public java.lang.String[] getParameterValues(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
aload 1
invokeinterface javax.servlet.http.HttpServletRequest.getParameterValues:(Ljava/lang/String;)[Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 1 1 paramName Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
paramName
public java.util.Iterator<java.lang.String> getParameterNames();
descriptor: ()Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getParameterNames:()Ljava/util/Enumeration;
invokestatic org.springframework.util.CollectionUtils.toIterator:(Ljava/util/Enumeration;)Ljava/util/Iterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
Signature: ()Ljava/util/Iterator<Ljava/lang/String;>;
public java.util.Map<java.lang.String, java.lang.String[]> getParameterMap();
descriptor: ()Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getParameterMap:()Ljava/util/Map;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
Signature: ()Ljava/util/Map<Ljava/lang/String;[Ljava/lang/String;>;
public java.util.Locale getLocale();
descriptor: ()Ljava/util/Locale;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getLocale:()Ljava/util/Locale;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
public java.lang.String getContextPath();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getContextPath:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
public java.lang.String getRemoteUser();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getRemoteUser:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public java.security.Principal getUserPrincipal();
descriptor: ()Ljava/security/Principal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.getUserPrincipal:()Ljava/security/Principal;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public boolean isUserInRole(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
aload 1
invokeinterface javax.servlet.http.HttpServletRequest.isUserInRole:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 1 1 role Ljava/lang/String;
MethodParameters:
Name Flags
role
public boolean isSecure();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
invokeinterface javax.servlet.http.HttpServletRequest.isSecure:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
public boolean checkNotModified(long);
descriptor: (J)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aconst_null
lload 1
invokevirtual org.springframework.web.context.request.ServletWebRequest.checkNotModified:(Ljava/lang/String;J)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 1 1 lastModifiedTimestamp J
MethodParameters:
Name Flags
lastModifiedTimestamp
public boolean checkNotModified(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc -1
invokevirtual org.springframework.web.context.request.ServletWebRequest.checkNotModified:(Ljava/lang/String;J)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 1 1 etag Ljava/lang/String;
MethodParameters:
Name Flags
etag
public boolean checkNotModified(java.lang.String, long);
descriptor: (Ljava/lang/String;J)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tThe method getStatus() is undefined for the type HttpServletResponse\n\tThe method getHeader(String) is undefined for the type HttpServletResponse\n\tThe method getHeader(String) is undefined for the type HttpServletResponse\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
MethodParameters:
Name Flags
etag
lastModifiedTimestamp
private boolean validateIfUnmodifiedSince(long);
descriptor: (J)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifge 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
ldc "If-Unmodified-Since"
invokevirtual org.springframework.web.context.request.ServletWebRequest.parseDateHeader:(Ljava/lang/String;)J
lstore 3
start local 3 3: lload 3
ldc -1
lcmp
ifne 5
4: iconst_0
ireturn
5: StackMap locals: long
StackMap stack:
aload 0
lload 3
lload 1
ldc 1000
ldiv
ldc 1000
lmul
lcmp
ifge 6
iconst_1
goto 7
StackMap locals:
StackMap stack: org.springframework.web.context.request.ServletWebRequest
6: iconst_0
StackMap locals: org.springframework.web.context.request.ServletWebRequest long long
StackMap stack: org.springframework.web.context.request.ServletWebRequest int
7: putfield org.springframework.web.context.request.ServletWebRequest.notModified:Z
8: iconst_1
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 9 1 lastModifiedTimestamp J
3 9 3 ifUnmodifiedSince J
MethodParameters:
Name Flags
lastModifiedTimestamp
private boolean validateIfNoneMatch(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
ldc "If-None-Match"
invokeinterface javax.servlet.http.HttpServletRequest.getHeaders:(Ljava/lang/String;)Ljava/util/Enumeration;
astore 2
start local 2 3: goto 6
end local 2 4: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
pop
5: iconst_0
ireturn
start local 2 6: StackMap locals: java.util.Enumeration
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 8
7: iconst_0
ireturn
8: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.springframework.web.context.request.ServletWebRequest.padEtagIfNecessary:(Ljava/lang/String;)Ljava/lang/String;
astore 1
9: aload 1
ldc "W/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 19
10: aload 1
iconst_2
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
11: goto 19
12: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 13: getstatic org.springframework.web.context.request.ServletWebRequest.ETAG_HEADER_VALUE_PATTERN:Ljava/util/regex/Pattern;
aload 3
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 4
start local 4 14: goto 18
15: StackMap locals: java.lang.String java.util.regex.Matcher
StackMap stack:
aload 4
invokevirtual java.util.regex.Matcher.group:()Ljava/lang/String;
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifeq 18
aload 1
aload 4
iconst_3
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
16: aload 0
iconst_1
putfield org.springframework.web.context.request.ServletWebRequest.notModified:Z
17: goto 19
18: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.util.regex.Matcher.find:()Z
ifne 15
end local 4 end local 3 19: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 12
20: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 21 1 etag Ljava/lang/String;
3 4 2 ifNoneMatch Ljava/util/Enumeration<Ljava/lang/String;>;
6 21 2 ifNoneMatch Ljava/util/Enumeration<Ljava/lang/String;>;
13 19 3 clientETags Ljava/lang/String;
14 19 4 etagMatcher Ljava/util/regex/Matcher;
Exception table:
from to target type
2 3 4 Class java.lang.IllegalArgumentException
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
etag
private java.lang.String padEtagIfNecessary(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifne 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 1
ldc "\""
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 3
aload 1
ldc "W/\""
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 5
StackMap locals:
StackMap stack:
3: aload 1
ldc "\""
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 5
4: aload 1
areturn
5: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "\""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 6 1 etag Ljava/lang/String;
MethodParameters:
Name Flags
etag
private boolean validateIfModifiedSince(long);
descriptor: (J)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifge 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
ldc "If-Modified-Since"
invokevirtual org.springframework.web.context.request.ServletWebRequest.parseDateHeader:(Ljava/lang/String;)J
lstore 3
start local 3 3: lload 3
ldc -1
lcmp
ifne 5
4: iconst_0
ireturn
5: StackMap locals: long
StackMap stack:
aload 0
lload 3
lload 1
ldc 1000
ldiv
ldc 1000
lmul
lcmp
iflt 6
iconst_1
goto 7
StackMap locals:
StackMap stack: org.springframework.web.context.request.ServletWebRequest
6: iconst_0
StackMap locals: org.springframework.web.context.request.ServletWebRequest long long
StackMap stack: org.springframework.web.context.request.ServletWebRequest int
7: putfield org.springframework.web.context.request.ServletWebRequest.notModified:Z
8: iconst_1
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 9 1 lastModifiedTimestamp J
3 9 3 ifModifiedSince J
MethodParameters:
Name Flags
lastModifiedTimestamp
public boolean isNotModified();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.context.request.ServletWebRequest.notModified:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
private long (java.lang.String);
descriptor: (Ljava/lang/String;)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: ldc -1
lstore 2
start local 2 1: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
aload 1
invokeinterface javax.servlet.http.HttpServletRequest.getDateHeader:(Ljava/lang/String;)J
lstore 2
2: goto 10
3: StackMap locals: org.springframework.web.context.request.ServletWebRequest java.lang.String long
StackMap stack: java.lang.IllegalArgumentException
pop
4: aload 0
aload 1
invokevirtual org.springframework.web.context.request.ServletWebRequest.getHeader:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 5: aload 4
ifnull 10
6: aload 4
bipush 59
invokevirtual java.lang.String.indexOf:(I)I
istore 5
start local 5 7: iload 5
iconst_m1
if_icmpeq 10
8: aload 4
iconst_0
iload 5
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 6
start local 6 9: aload 0
aload 6
invokevirtual org.springframework.web.context.request.ServletWebRequest.parseDateValue:(Ljava/lang/String;)J
lstore 2
end local 6 end local 5 end local 4 10: StackMap locals:
StackMap stack:
lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 11 1 headerName Ljava/lang/String;
1 11 2 dateValue J
5 10 4 headerValue Ljava/lang/String;
7 10 5 separatorIndex I
9 10 6 datePart Ljava/lang/String;
Exception table:
from to target type
1 2 3 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
headerName
private long parseDateValue(java.lang.String);
descriptor: (Ljava/lang/String;)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: ldc -1
lreturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.String.length:()I
iconst_3
if_icmplt 12
3: getstatic org.springframework.web.context.request.ServletWebRequest.DATE_FORMATS:[Ljava/lang/String;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 11
StackMap locals: org.springframework.web.context.request.ServletWebRequest java.lang.String top int int java.lang.String[]
StackMap stack:
4: aload 5
iload 3
aaload
astore 2
start local 2 5: new java.text.SimpleDateFormat
dup
aload 2
getstatic java.util.Locale.US:Ljava/util/Locale;
invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
astore 6
start local 6 6: aload 6
getstatic org.springframework.web.context.request.ServletWebRequest.GMT:Ljava/util/TimeZone;
invokevirtual java.text.SimpleDateFormat.setTimeZone:(Ljava/util/TimeZone;)V
7: aload 6
aload 1
invokevirtual java.text.SimpleDateFormat.parse:(Ljava/lang/String;)Ljava/util/Date;
invokevirtual java.util.Date.getTime:()J
8: lreturn
9: StackMap locals: org.springframework.web.context.request.ServletWebRequest java.lang.String java.lang.String int int java.lang.String[] java.text.SimpleDateFormat
StackMap stack: java.text.ParseException
pop
end local 6 end local 2 10: iinc 3 1
StackMap locals: org.springframework.web.context.request.ServletWebRequest java.lang.String top int int java.lang.String[]
StackMap stack:
11: iload 3
iload 4
if_icmplt 4
12: StackMap locals: org.springframework.web.context.request.ServletWebRequest java.lang.String
StackMap stack:
ldc -1
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/springframework/web/context/request/ServletWebRequest;
0 13 1 headerValue Ljava/lang/String;
5 10 2 dateFormat Ljava/lang/String;
6 10 6 simpleDateFormat Ljava/text/SimpleDateFormat;
Exception table:
from to target type
7 8 9 Class java.text.ParseException
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
headerValue
public java.lang.String getDescription(boolean);
descriptor: (Z)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.springframework.web.context.request.ServletWebRequest.getRequest:()Ljavax/servlet/http/HttpServletRequest;
astore 2
start local 2 1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 2: aload 3
ldc "uri="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokeinterface javax.servlet.http.HttpServletRequest.getRequestURI:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
3: iload 1
ifeq 13
4: aload 2
invokeinterface javax.servlet.http.HttpServletRequest.getRemoteAddr:()Ljava/lang/String;
astore 4
start local 4 5: aload 4
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifeq 7
6: aload 3
ldc ";client="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: StackMap locals: javax.servlet.http.HttpServletRequest java.lang.StringBuilder java.lang.String
StackMap stack:
aload 2
iconst_0
invokeinterface javax.servlet.http.HttpServletRequest.getSession:(Z)Ljavax/servlet/http/HttpSession;
astore 5
start local 5 8: aload 5
ifnull 10
9: aload 3
ldc ";session="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokeinterface javax.servlet.http.HttpSession.getId:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
10: StackMap locals: javax.servlet.http.HttpSession
StackMap stack:
aload 2
invokeinterface javax.servlet.http.HttpServletRequest.getRemoteUser:()Ljava/lang/String;
astore 6
start local 6 11: aload 6
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifeq 13
12: aload 3
ldc ";user="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 6 end local 5 end local 4 13: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
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/context/request/ServletWebRequest;
0 14 1 includeClientInfo Z
1 14 2 request Ljavax/servlet/http/HttpServletRequest;
2 14 3 sb Ljava/lang/StringBuilder;
5 13 4 client Ljava/lang/String;
8 13 5 session Ljavax/servlet/http/HttpSession;
11 13 6 user Ljava/lang/String;
MethodParameters:
Name Flags
includeClientInfo
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "ServletWebRequest: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
iconst_1
invokevirtual org.springframework.web.context.request.ServletWebRequest.getDescription:(Z)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/context/request/ServletWebRequest;
}
SourceFile: "ServletWebRequest.java"