public class org.springframework.web.servlet.mvc.WebContentInterceptor extends org.springframework.web.servlet.support.WebContentGenerator implements org.springframework.web.servlet.HandlerInterceptor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.web.servlet.mvc.WebContentInterceptor
super_class: org.springframework.web.servlet.support.WebContentGenerator
{
private org.springframework.web.util.UrlPathHelper urlPathHelper;
descriptor: Lorg/springframework/web/util/UrlPathHelper;
flags: (0x0002) ACC_PRIVATE
private org.springframework.util.PathMatcher pathMatcher;
descriptor: Lorg/springframework/util/PathMatcher;
flags: (0x0002) ACC_PRIVATE
private java.util.Map<java.lang.String, java.lang.Integer> cacheMappings;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;
private java.util.Map<java.lang.String, org.springframework.http.CacheControl> cacheControlMappings;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/String;Lorg/springframework/http/CacheControl;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokespecial org.springframework.web.servlet.support.WebContentGenerator.<init>:(Z)V
1: aload 0
new org.springframework.web.util.UrlPathHelper
dup
invokespecial org.springframework.web.util.UrlPathHelper.<init>:()V
putfield org.springframework.web.servlet.mvc.WebContentInterceptor.urlPathHelper:Lorg/springframework/web/util/UrlPathHelper;
2: aload 0
new org.springframework.util.AntPathMatcher
dup
invokespecial org.springframework.util.AntPathMatcher.<init>:()V
putfield org.springframework.web.servlet.mvc.WebContentInterceptor.pathMatcher:Lorg/springframework/util/PathMatcher;
3: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheMappings:Ljava/util/Map;
4: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheControlMappings:Ljava/util/Map;
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
public void setAlwaysUseFullPath(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.urlPathHelper:Lorg/springframework/web/util/UrlPathHelper;
iload 1
invokevirtual org.springframework.web.util.UrlPathHelper.setAlwaysUseFullPath:(Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 2 1 alwaysUseFullPath Z
MethodParameters:
Name Flags
alwaysUseFullPath
public void setUrlDecode(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.urlPathHelper:Lorg/springframework/web/util/UrlPathHelper;
iload 1
invokevirtual org.springframework.web.util.UrlPathHelper.setUrlDecode:(Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 2 1 urlDecode Z
MethodParameters:
Name Flags
urlDecode
public void setUrlPathHelper(org.springframework.web.util.UrlPathHelper);
descriptor: (Lorg/springframework/web/util/UrlPathHelper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "UrlPathHelper must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 0
aload 1
putfield org.springframework.web.servlet.mvc.WebContentInterceptor.urlPathHelper:Lorg/springframework/web/util/UrlPathHelper;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 3 1 urlPathHelper Lorg/springframework/web/util/UrlPathHelper;
MethodParameters:
Name Flags
urlPathHelper
public void setCacheMappings(java.util.Properties);
descriptor: (Ljava/util/Properties;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheMappings:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
1: aload 1
invokevirtual java.util.Properties.propertyNames:()Ljava/util/Enumeration;
astore 2
start local 2 2: goto 6
3: StackMap locals: java.util.Enumeration
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 4: aload 1
aload 3
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 4
start local 4 5: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheMappings:Ljava/util/Map;
aload 3
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 end local 3 6: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 3
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 8 1 cacheMappings Ljava/util/Properties;
2 8 2 propNames Ljava/util/Enumeration<*>;
4 6 3 path Ljava/lang/String;
5 6 4 cacheSeconds I
MethodParameters:
Name Flags
cacheMappings
public void addCacheMapping(org.springframework.http.CacheControl, java.lang.String[]);
descriptor: (Lorg/springframework/http/CacheControl;[Ljava/lang/String;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 4
StackMap locals: org.springframework.web.servlet.mvc.WebContentInterceptor org.springframework.http.CacheControl java.lang.String[] top int int java.lang.String[]
StackMap stack:
1: aload 6
iload 4
aaload
astore 3
start local 3 2: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheControlMappings:Ljava/util/Map;
aload 3
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 3: iinc 4 1
StackMap locals:
StackMap stack:
4: iload 4
iload 5
if_icmplt 1
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 6 1 cacheControl Lorg/springframework/http/CacheControl;
0 6 2 paths [Ljava/lang/String;
2 3 3 path Ljava/lang/String;
MethodParameters:
Name Flags
cacheControl
paths
public void setPathMatcher(org.springframework.util.PathMatcher);
descriptor: (Lorg/springframework/util/PathMatcher;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "PathMatcher must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 0
aload 1
putfield org.springframework.web.servlet.mvc.WebContentInterceptor.pathMatcher:Lorg/springframework/util/PathMatcher;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 3 1 pathMatcher Lorg/springframework/util/PathMatcher;
MethodParameters:
Name Flags
pathMatcher
public boolean preHandle(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.Object);
descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokevirtual org.springframework.web.servlet.mvc.WebContentInterceptor.checkRequest:(Ljavax/servlet/http/HttpServletRequest;)V
1: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.urlPathHelper:Lorg/springframework/web/util/UrlPathHelper;
aload 1
invokevirtual org.springframework.web.util.UrlPathHelper.getLookupPathForRequest:(Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
astore 4
start local 4 2: aload 0
aload 4
invokevirtual org.springframework.web.servlet.mvc.WebContentInterceptor.lookupCacheControl:(Ljava/lang/String;)Lorg/springframework/http/CacheControl;
astore 5
start local 5 3: aload 0
aload 4
invokevirtual org.springframework.web.servlet.mvc.WebContentInterceptor.lookupCacheSeconds:(Ljava/lang/String;)Ljava/lang/Integer;
astore 6
start local 6 4: aload 5
ifnull 9
5: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
ifeq 7
6: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Applying "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
7: StackMap locals: java.lang.String org.springframework.http.CacheControl java.lang.Integer
StackMap stack:
aload 0
aload 2
aload 5
invokevirtual org.springframework.web.servlet.mvc.WebContentInterceptor.applyCacheControl:(Ljavax/servlet/http/HttpServletResponse;Lorg/springframework/http/CacheControl;)V
8: goto 17
9: StackMap locals:
StackMap stack:
aload 6
ifnull 14
10: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
ifeq 12
11: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Applying cacheSeconds "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
12: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 6
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.springframework.web.servlet.mvc.WebContentInterceptor.applyCacheSeconds:(Ljavax/servlet/http/HttpServletResponse;I)V
13: goto 17
14: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isTraceEnabled:()Z
ifeq 16
15: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.logger:Lorg/apache/commons/logging/Log;
ldc "Applying default cacheSeconds"
invokeinterface org.apache.commons.logging.Log.trace:(Ljava/lang/Object;)V
16: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.springframework.web.servlet.mvc.WebContentInterceptor.prepareResponse:(Ljavax/servlet/http/HttpServletResponse;)V
17: StackMap locals:
StackMap stack:
iconst_1
ireturn
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 18 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 18 1 request Ljavax/servlet/http/HttpServletRequest;
0 18 2 response Ljavax/servlet/http/HttpServletResponse;
0 18 3 handler Ljava/lang/Object;
2 18 4 lookupPath Ljava/lang/String;
3 18 5 cacheControl Lorg/springframework/http/CacheControl;
4 18 6 cacheSeconds Ljava/lang/Integer;
Exceptions:
throws javax.servlet.ServletException
MethodParameters:
Name Flags
request
response
handler
protected org.springframework.http.CacheControl lookupCacheControl(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/springframework/http/CacheControl;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheControlMappings:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.springframework.http.CacheControl
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
areturn
3: StackMap locals: org.springframework.http.CacheControl
StackMap stack:
aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheControlMappings:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: org.springframework.web.servlet.mvc.WebContentInterceptor java.lang.String org.springframework.http.CacheControl top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 5: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.pathMatcher:Lorg/springframework/util/PathMatcher;
aload 3
aload 1
invokeinterface org.springframework.util.PathMatcher.match:(Ljava/lang/String;Ljava/lang/String;)Z
ifeq 7
6: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheControlMappings:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.springframework.http.CacheControl
areturn
end local 3 7: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
8: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 9 1 urlPath Ljava/lang/String;
1 9 2 cacheControl Lorg/springframework/http/CacheControl;
5 7 3 registeredPath Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
urlPath
protected java.lang.Integer lookupCacheSeconds(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Integer;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheMappings:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
areturn
3: StackMap locals: java.lang.Integer
StackMap stack:
aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheMappings:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: org.springframework.web.servlet.mvc.WebContentInterceptor java.lang.String java.lang.Integer top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 5: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.pathMatcher:Lorg/springframework/util/PathMatcher;
aload 3
aload 1
invokeinterface org.springframework.util.PathMatcher.match:(Ljava/lang/String;Ljava/lang/String;)Z
ifeq 7
6: aload 0
getfield org.springframework.web.servlet.mvc.WebContentInterceptor.cacheMappings:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
areturn
end local 3 7: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
8: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 9 1 urlPath Ljava/lang/String;
1 9 2 cacheSeconds Ljava/lang/Integer;
5 7 3 registeredPath Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
urlPath
public void postHandle(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.Object, org.springframework.web.servlet.ModelAndView);
descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Ljava/lang/Object;Lorg/springframework/web/servlet/ModelAndView;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 1 1 request Ljavax/servlet/http/HttpServletRequest;
0 1 2 response Ljavax/servlet/http/HttpServletResponse;
0 1 3 handler Ljava/lang/Object;
0 1 4 modelAndView Lorg/springframework/web/servlet/ModelAndView;
Exceptions:
throws java.lang.Exception
RuntimeVisibleParameterAnnotations:
0:
1:
2:
3:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
request
response
handler
modelAndView
public void afterCompletion(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.Object, java.lang.Exception);
descriptor: (Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Ljava/lang/Object;Ljava/lang/Exception;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/web/servlet/mvc/WebContentInterceptor;
0 1 1 request Ljavax/servlet/http/HttpServletRequest;
0 1 2 response Ljavax/servlet/http/HttpServletResponse;
0 1 3 handler Ljava/lang/Object;
0 1 4 ex Ljava/lang/Exception;
Exceptions:
throws java.lang.Exception
RuntimeVisibleParameterAnnotations:
0:
1:
2:
3:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
request
response
handler
ex
}
SourceFile: "WebContentInterceptor.java"