public class org.apache.catalina.valves.rewrite.ResolverImpl extends org.apache.catalina.valves.rewrite.Resolver
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.valves.rewrite.ResolverImpl
super_class: org.apache.catalina.valves.rewrite.Resolver
{
protected org.apache.catalina.connector.Request request;
descriptor: Lorg/apache/catalina/connector/Request;
flags: (0x0004) ACC_PROTECTED
public void <init>(org.apache.catalina.connector.Request);
descriptor: (Lorg/apache/catalina/connector/Request;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial org.apache.catalina.valves.rewrite.Resolver.<init>:()V
1: aload 0
aconst_null
putfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
2: aload 0
aload 1
putfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 4 1 request Lorg/apache/catalina/connector/Request;
MethodParameters:
Name Flags
request
public java.lang.String resolve(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "HTTP_USER_AGENT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
ldc "user-agent"
invokevirtual org.apache.catalina.connector.Request.getHeader:(Ljava/lang/String;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 1
ldc "HTTP_REFERER"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
ldc "referer"
invokevirtual org.apache.catalina.connector.Request.getHeader:(Ljava/lang/String;)Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 1
ldc "HTTP_COOKIE"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
ldc "cookie"
invokevirtual org.apache.catalina.connector.Request.getHeader:(Ljava/lang/String;)Ljava/lang/String;
areturn
6: StackMap locals:
StackMap stack:
aload 1
ldc "HTTP_FORWARDED"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
7: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
ldc "forwarded"
invokevirtual org.apache.catalina.connector.Request.getHeader:(Ljava/lang/String;)Ljava/lang/String;
areturn
8: StackMap locals:
StackMap stack:
aload 1
ldc "HTTP_HOST"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
9: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getServerName:()Ljava/lang/String;
areturn
10: StackMap locals:
StackMap stack:
aload 1
ldc "HTTP_PROXY_CONNECTION"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
11: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
ldc "proxy-connection"
invokevirtual org.apache.catalina.connector.Request.getHeader:(Ljava/lang/String;)Ljava/lang/String;
areturn
12: StackMap locals:
StackMap stack:
aload 1
ldc "HTTP_ACCEPT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
ldc "accept"
invokevirtual org.apache.catalina.connector.Request.getHeader:(Ljava/lang/String;)Ljava/lang/String;
areturn
14: StackMap locals:
StackMap stack:
aload 1
ldc "REMOTE_ADDR"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
15: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRemoteAddr:()Ljava/lang/String;
areturn
16: StackMap locals:
StackMap stack:
aload 1
ldc "REMOTE_HOST"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
17: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRemoteHost:()Ljava/lang/String;
areturn
18: StackMap locals:
StackMap stack:
aload 1
ldc "REMOTE_PORT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
19: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRemotePort:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
20: StackMap locals:
StackMap stack:
aload 1
ldc "REMOTE_USER"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
21: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRemoteUser:()Ljava/lang/String;
areturn
22: StackMap locals:
StackMap stack:
aload 1
ldc "REMOTE_IDENT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
23: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRemoteUser:()Ljava/lang/String;
areturn
24: StackMap locals:
StackMap stack:
aload 1
ldc "REQUEST_METHOD"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 26
25: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getMethod:()Ljava/lang/String;
areturn
26: StackMap locals:
StackMap stack:
aload 1
ldc "SCRIPT_FILENAME"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
27: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getServletContext:()Ljakarta/servlet/ServletContext;
aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getServletPath:()Ljava/lang/String;
invokeinterface jakarta.servlet.ServletContext.getRealPath:(Ljava/lang/String;)Ljava/lang/String;
areturn
28: StackMap locals:
StackMap stack:
aload 1
ldc "REQUEST_PATH"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 30
29: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequestPathMB:()Lorg/apache/tomcat/util/buf/MessageBytes;
invokevirtual org.apache.tomcat.util.buf.MessageBytes.toString:()Ljava/lang/String;
areturn
30: StackMap locals:
StackMap stack:
aload 1
ldc "CONTEXT_PATH"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 32
31: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getContextPath:()Ljava/lang/String;
areturn
32: StackMap locals:
StackMap stack:
aload 1
ldc "SERVLET_PATH"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 34
33: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getServletPath:()Ljava/lang/String;
invokestatic org.apache.catalina.valves.rewrite.ResolverImpl.emptyStringIfNull:(Ljava/lang/String;)Ljava/lang/String;
areturn
34: StackMap locals:
StackMap stack:
aload 1
ldc "PATH_INFO"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 36
35: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getPathInfo:()Ljava/lang/String;
invokestatic org.apache.catalina.valves.rewrite.ResolverImpl.emptyStringIfNull:(Ljava/lang/String;)Ljava/lang/String;
areturn
36: StackMap locals:
StackMap stack:
aload 1
ldc "QUERY_STRING"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 38
37: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getQueryString:()Ljava/lang/String;
invokestatic org.apache.catalina.valves.rewrite.ResolverImpl.emptyStringIfNull:(Ljava/lang/String;)Ljava/lang/String;
areturn
38: StackMap locals:
StackMap stack:
aload 1
ldc "AUTH_TYPE"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 40
39: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getAuthType:()Ljava/lang/String;
areturn
40: StackMap locals:
StackMap stack:
aload 1
ldc "DOCUMENT_ROOT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 42
41: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getServletContext:()Ljakarta/servlet/ServletContext;
ldc "/"
invokeinterface jakarta.servlet.ServletContext.getRealPath:(Ljava/lang/String;)Ljava/lang/String;
areturn
42: StackMap locals:
StackMap stack:
aload 1
ldc "SERVER_NAME"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 44
43: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getLocalName:()Ljava/lang/String;
areturn
44: StackMap locals:
StackMap stack:
aload 1
ldc "SERVER_ADDR"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 46
45: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getLocalAddr:()Ljava/lang/String;
areturn
46: StackMap locals:
StackMap stack:
aload 1
ldc "SERVER_PORT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 48
47: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getLocalPort:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
48: StackMap locals:
StackMap stack:
aload 1
ldc "SERVER_PROTOCOL"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 50
49: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getProtocol:()Ljava/lang/String;
areturn
50: StackMap locals:
StackMap stack:
aload 1
ldc "SERVER_SOFTWARE"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 52
51: ldc "tomcat"
areturn
52: StackMap locals:
StackMap stack:
aload 1
ldc "THE_REQUEST"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 56
53: new java.lang.StringBuilder
dup
aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getMethod:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequestURI:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
54: ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getProtocol:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
55: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
56: StackMap locals:
StackMap stack:
aload 1
ldc "REQUEST_URI"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 58
57: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getRequestURI:()Ljava/lang/String;
areturn
58: StackMap locals:
StackMap stack:
aload 1
ldc "REQUEST_FILENAME"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 60
59: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getPathTranslated:()Ljava/lang/String;
areturn
60: StackMap locals:
StackMap stack:
aload 1
ldc "HTTPS"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 64
61: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.isSecure:()Z
ifeq 62
ldc "on"
goto 63
StackMap locals:
StackMap stack:
62: ldc "off"
StackMap locals:
StackMap stack: java.lang.String
63: areturn
64: StackMap locals:
StackMap stack:
aload 1
ldc "TIME_YEAR"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 66
65: invokestatic java.util.Calendar.getInstance:()Ljava/util/Calendar;
iconst_1
invokevirtual java.util.Calendar.get:(I)I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
66: StackMap locals:
StackMap stack:
aload 1
ldc "TIME_MON"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 68
67: invokestatic java.util.Calendar.getInstance:()Ljava/util/Calendar;
iconst_2
invokevirtual java.util.Calendar.get:(I)I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
68: StackMap locals:
StackMap stack:
aload 1
ldc "TIME_DAY"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 70
69: invokestatic java.util.Calendar.getInstance:()Ljava/util/Calendar;
iconst_5
invokevirtual java.util.Calendar.get:(I)I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
70: StackMap locals:
StackMap stack:
aload 1
ldc "TIME_HOUR"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 72
71: invokestatic java.util.Calendar.getInstance:()Ljava/util/Calendar;
bipush 11
invokevirtual java.util.Calendar.get:(I)I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
72: StackMap locals:
StackMap stack:
aload 1
ldc "TIME_MIN"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 74
73: invokestatic java.util.Calendar.getInstance:()Ljava/util/Calendar;
bipush 12
invokevirtual java.util.Calendar.get:(I)I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
74: StackMap locals:
StackMap stack:
aload 1
ldc "TIME_SEC"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 76
75: invokestatic java.util.Calendar.getInstance:()Ljava/util/Calendar;
bipush 13
invokevirtual java.util.Calendar.get:(I)I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
76: StackMap locals:
StackMap stack:
aload 1
ldc "TIME_WDAY"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 78
77: invokestatic java.util.Calendar.getInstance:()Ljava/util/Calendar;
bipush 7
invokevirtual java.util.Calendar.get:(I)I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
78: StackMap locals:
StackMap stack:
aload 1
ldc "TIME"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 80
79: invokestatic org.apache.tomcat.util.http.FastHttpDateFormat.getCurrentDate:()Ljava/lang/String;
areturn
80: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 81 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 81 1 key Ljava/lang/String;
MethodParameters:
Name Flags
key
public java.lang.String resolveEnv(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
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
aload 1
invokevirtual org.apache.catalina.connector.Request.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
goto 3
StackMap locals: java.lang.Object
StackMap stack:
2: aload 1
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
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/apache/catalina/valves/rewrite/ResolverImpl;
0 4 1 key Ljava/lang/String;
1 4 2 result Ljava/lang/Object;
MethodParameters:
Name Flags
key
public java.lang.String resolveSsl(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
ldc "jakarta.servlet.request.ssl_session_mgr"
invokevirtual org.apache.catalina.connector.Request.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
checkcast org.apache.tomcat.util.net.SSLSupport
astore 2
start local 2 1: aload 1
ldc "HTTPS"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
2: aload 2
ifnull 3
iconst_1
goto 4
StackMap locals: org.apache.tomcat.util.net.SSLSupport
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: invokestatic java.lang.String.valueOf:(Z)Ljava/lang/String;
5: areturn
6: StackMap locals:
StackMap stack:
aload 1
ldc "SSL_PROTOCOL"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
7: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getProtocol:()Ljava/lang/String;
8: areturn
9: StackMap locals:
StackMap stack:
aload 1
ldc "SSL_SESSION_ID"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
10: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getSessionId:()Ljava/lang/String;
11: areturn
12: StackMap locals:
StackMap stack:
aload 1
ldc "SSL_SESSION_RESUMED"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 64
13: aload 1
ldc "SSL_SECURE_RENEG"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 64
14: aload 1
ldc "SSL_COMPRESS_METHOD"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 64
15: aload 1
ldc "SSL_TLS_SNI"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 64
16: aload 1
ldc "SSL_CIPHER"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
17: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getCipherSuite:()Ljava/lang/String;
18: areturn
19: StackMap locals:
StackMap stack:
aload 1
ldc "SSL_CIPHER_EXPORT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
20: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getCipherSuite:()Ljava/lang/String;
astore 3
start local 3 21: aload 3
invokestatic org.apache.tomcat.util.net.openssl.ciphers.OpenSSLCipherConfigurationParser.parse:(Ljava/lang/String;)Ljava/util/LinkedHashSet;
astore 4
start local 4 22: aload 4
invokeinterface java.util.Set.size:()I
iconst_1
if_icmpne 64
23: aload 4
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.tomcat.util.net.openssl.ciphers.Cipher
astore 5
start local 5 24: aload 5
invokevirtual org.apache.tomcat.util.net.openssl.ciphers.Cipher.getLevel:()Lorg/apache/tomcat/util/net/openssl/ciphers/EncryptionLevel;
getstatic org.apache.tomcat.util.net.openssl.ciphers.EncryptionLevel.EXP40:Lorg/apache/tomcat/util/net/openssl/ciphers/EncryptionLevel;
invokevirtual org.apache.tomcat.util.net.openssl.ciphers.EncryptionLevel.equals:(Ljava/lang/Object;)Z
ifne 26
25: aload 5
invokevirtual org.apache.tomcat.util.net.openssl.ciphers.Cipher.getLevel:()Lorg/apache/tomcat/util/net/openssl/ciphers/EncryptionLevel;
getstatic org.apache.tomcat.util.net.openssl.ciphers.EncryptionLevel.EXP56:Lorg/apache/tomcat/util/net/openssl/ciphers/EncryptionLevel;
invokevirtual org.apache.tomcat.util.net.openssl.ciphers.EncryptionLevel.equals:(Ljava/lang/Object;)Z
ifeq 27
26: StackMap locals: java.lang.String java.util.Set org.apache.tomcat.util.net.openssl.ciphers.Cipher
StackMap stack:
ldc "true"
areturn
27: StackMap locals:
StackMap stack:
ldc "false"
areturn
end local 5 end local 4 end local 3 28: StackMap locals:
StackMap stack:
aload 1
ldc "SSL_CIPHER_ALGKEYSIZE"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 35
29: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getCipherSuite:()Ljava/lang/String;
astore 3
start local 3 30: aload 3
invokestatic org.apache.tomcat.util.net.openssl.ciphers.OpenSSLCipherConfigurationParser.parse:(Ljava/lang/String;)Ljava/util/LinkedHashSet;
astore 4
start local 4 31: aload 4
invokeinterface java.util.Set.size:()I
iconst_1
if_icmpne 64
32: aload 4
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.tomcat.util.net.openssl.ciphers.Cipher
astore 5
start local 5 33: aload 5
invokevirtual org.apache.tomcat.util.net.openssl.ciphers.Cipher.getAlg_bits:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
34: areturn
end local 5 end local 4 end local 3 35: StackMap locals:
StackMap stack:
aload 1
ldc "SSL_CIPHER_USEKEYSIZE"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 38
36: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getKeySize:()Ljava/lang/Integer;
invokevirtual java.lang.Integer.toString:()Ljava/lang/String;
37: areturn
38: StackMap locals:
StackMap stack:
aload 1
ldc "SSL_CLIENT_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 52
39: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getPeerCertificateChain:()[Ljava/security/cert/X509Certificate;
astore 3
start local 3 40: aload 3
ifnull 64
aload 3
arraylength
ifle 64
41: aload 1
ldc "SSL_CLIENT_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
42: aload 0
aload 1
aload 3
invokevirtual org.apache.catalina.valves.rewrite.ResolverImpl.resolveSslCertificates:(Ljava/lang/String;[Ljava/security/cert/X509Certificate;)Ljava/lang/String;
astore 4
start local 4 43: aload 4
ifnull 46
44: aload 4
45: areturn
46: StackMap locals: java.security.cert.X509Certificate[] java.lang.String
StackMap stack:
aload 1
ldc "SAN_OTHER_msUPN_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 49
47: aload 1
ldc "SAN_OTHER_msUPN_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
48: goto 64
StackMap locals:
StackMap stack:
49: aload 1
ldc "CERT_RFC4523_CEA"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 64
50: aload 1
ldc "VERIFY"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
pop
end local 4 end local 3 51: goto 64
StackMap locals:
StackMap stack:
52: aload 1
ldc "SSL_SERVER_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 64
53: aload 2
invokeinterface org.apache.tomcat.util.net.SSLSupport.getLocalCertificateChain:()[Ljava/security/cert/X509Certificate;
astore 3
start local 3 54: aload 3
ifnull 64
aload 3
arraylength
ifle 64
55: aload 1
ldc "SSL_SERVER_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
56: aload 0
aload 1
aload 3
invokevirtual org.apache.catalina.valves.rewrite.ResolverImpl.resolveSslCertificates:(Ljava/lang/String;[Ljava/security/cert/X509Certificate;)Ljava/lang/String;
astore 4
start local 4 57: aload 4
ifnull 60
58: aload 4
59: areturn
60: StackMap locals: java.security.cert.X509Certificate[] java.lang.String
StackMap stack:
aload 1
ldc "SAN_OTHER_dnsSRV_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 64
61: aload 1
ldc "SAN_OTHER_dnsSRV_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
end local 4 end local 3 62: goto 64
StackMap locals: org.apache.catalina.valves.rewrite.ResolverImpl java.lang.String org.apache.tomcat.util.net.SSLSupport
StackMap stack: java.io.IOException
63: pop
64: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 65 1 key Ljava/lang/String;
1 65 2 sslSupport Lorg/apache/tomcat/util/net/SSLSupport;
21 28 3 cipherSuite Ljava/lang/String;
22 28 4 cipherList Ljava/util/Set<Lorg/apache/tomcat/util/net/openssl/ciphers/Cipher;>;
24 28 5 cipher Lorg/apache/tomcat/util/net/openssl/ciphers/Cipher;
30 35 3 cipherSuite Ljava/lang/String;
31 35 4 cipherList Ljava/util/Set<Lorg/apache/tomcat/util/net/openssl/ciphers/Cipher;>;
33 35 5 cipher Lorg/apache/tomcat/util/net/openssl/ciphers/Cipher;
40 51 3 certificates [Ljava/security/cert/X509Certificate;
43 51 4 result Ljava/lang/String;
54 62 3 certificates [Ljava/security/cert/X509Certificate;
57 62 4 result Ljava/lang/String;
Exception table:
from to target type
1 5 63 Class java.io.IOException
6 8 63 Class java.io.IOException
9 11 63 Class java.io.IOException
12 18 63 Class java.io.IOException
19 26 63 Class java.io.IOException
28 34 63 Class java.io.IOException
35 37 63 Class java.io.IOException
38 45 63 Class java.io.IOException
46 59 63 Class java.io.IOException
60 62 63 Class java.io.IOException
MethodParameters:
Name Flags
key
private java.lang.String resolveSslCertificates(java.lang.String, java.security.cert.X509Certificate[]);
descriptor: (Ljava/lang/String;[Ljava/security/cert/X509Certificate;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "M_VERSION"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getVersion:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 1
ldc "M_SERIAL"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getSerialNumber:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.toString:()Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 1
ldc "S_DN"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getSubjectDN:()Ljava/security/Principal;
invokeinterface java.security.Principal.getName:()Ljava/lang/String;
areturn
6: StackMap locals:
StackMap stack:
aload 1
ldc "S_DN_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 9
7: aload 1
ldc "S_DN_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
8: aload 0
aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual javax.security.auth.x500.X500Principal.getName:()Ljava/lang/String;
aload 1
invokevirtual org.apache.catalina.valves.rewrite.ResolverImpl.resolveComponent:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
areturn
9: StackMap locals:
StackMap stack:
aload 1
ldc "SAN_Email_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 12
10: aload 1
ldc "SAN_Email_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
11: aload 0
aload 2
iconst_0
aaload
iconst_1
aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
invokevirtual org.apache.catalina.valves.rewrite.ResolverImpl.resolveAlternateName:(Ljava/security/cert/X509Certificate;II)Ljava/lang/String;
areturn
12: StackMap locals:
StackMap stack:
aload 1
ldc "SAN_DNS_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 15
13: aload 1
ldc "SAN_DNS_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
14: aload 0
aload 2
iconst_0
aaload
iconst_2
aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
invokevirtual org.apache.catalina.valves.rewrite.ResolverImpl.resolveAlternateName:(Ljava/security/cert/X509Certificate;II)Ljava/lang/String;
areturn
15: StackMap locals:
StackMap stack:
aload 1
ldc "I_DN"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 17
16: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getIssuerDN:()Ljava/security/Principal;
invokeinterface java.security.Principal.getName:()Ljava/lang/String;
areturn
17: StackMap locals:
StackMap stack:
aload 1
ldc "I_DN_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 20
18: aload 1
ldc "I_DN_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
19: aload 0
aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
invokevirtual javax.security.auth.x500.X500Principal.getName:()Ljava/lang/String;
aload 1
invokevirtual org.apache.catalina.valves.rewrite.ResolverImpl.resolveComponent:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
areturn
20: StackMap locals:
StackMap stack:
aload 1
ldc "V_START"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
21: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getNotBefore:()Ljava/util/Date;
invokevirtual java.util.Date.getTime:()J
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
areturn
22: StackMap locals:
StackMap stack:
aload 1
ldc "V_END"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
23: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getNotAfter:()Ljava/util/Date;
invokevirtual java.util.Date.getTime:()J
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
areturn
24: StackMap locals:
StackMap stack:
aload 1
ldc "V_REMAIN"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 29
25: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getNotAfter:()Ljava/util/Date;
invokevirtual java.util.Date.getTime:()J
invokestatic java.lang.System.currentTimeMillis:()J
lsub
lstore 3
start local 3 26: lload 3
lconst_0
lcmp
ifge 28
27: lconst_0
lstore 3
28: StackMap locals: long
StackMap stack:
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
lload 3
invokevirtual java.util.concurrent.TimeUnit.toDays:(J)J
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
areturn
end local 3 29: StackMap locals:
StackMap stack:
aload 1
ldc "A_SIG"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 31
30: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getSigAlgName:()Ljava/lang/String;
areturn
31: StackMap locals:
StackMap stack:
aload 1
ldc "A_KEY"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 33
32: aload 2
iconst_0
aaload
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
invokeinterface java.security.PublicKey.getAlgorithm:()Ljava/lang/String;
areturn
33: StackMap locals:
StackMap stack:
aload 1
ldc "CERT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 38
34: aload 2
iconst_0
aaload
invokestatic org.apache.tomcat.util.net.jsse.PEMFile.toPEM:(Ljava/security/cert/X509Certificate;)Ljava/lang/String;
35: areturn
36: StackMap locals:
StackMap stack: java.security.cert.CertificateEncodingException
pop
37: goto 43
StackMap locals:
StackMap stack:
38: aload 1
ldc "CERT_CHAIN_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 43
39: aload 1
ldc "CERT_CHAIN_"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
40: aload 2
aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
aaload
invokestatic org.apache.tomcat.util.net.jsse.PEMFile.toPEM:(Ljava/security/cert/X509Certificate;)Ljava/lang/String;
41: areturn
42: StackMap locals:
StackMap stack: java.lang.Exception
pop
43: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 44 1 key Ljava/lang/String;
0 44 2 certificates [Ljava/security/cert/X509Certificate;
26 29 3 remain J
Exception table:
from to target type
34 35 36 Class java.security.cert.CertificateEncodingException
40 41 42 Class java.lang.NumberFormatException
40 41 42 Class java.lang.ArrayIndexOutOfBoundsException
40 41 42 Class java.security.cert.CertificateEncodingException
MethodParameters:
Name Flags
key
certificates
private java.lang.String resolveComponent(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 3
start local 3 1: new java.util.StringTokenizer
dup
aload 1
ldc ","
invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 4
start local 4 2: goto 7
3: StackMap locals: java.util.HashMap java.util.StringTokenizer
StackMap stack:
aload 4
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 5
start local 5 4: aload 5
ldc "="
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 6
start local 6 5: iload 6
ifle 7
iload 6
iconst_1
iadd
aload 5
invokevirtual java.lang.String.length:()I
if_icmpge 7
6: aload 3
aload 5
iconst_0
iload 6
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
aload 5
iload 6
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 6 end local 5 7: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.util.StringTokenizer.hasMoreElements:()Z
ifne 3
8: aload 3
aload 2
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 9 1 fullDN Ljava/lang/String;
0 9 2 component Ljava/lang/String;
1 9 3 components Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
2 9 4 tokenizer Ljava/util/StringTokenizer;
4 7 5 token Ljava/lang/String;
5 7 6 pos I
MethodParameters:
Name Flags
fullDN
component
private java.lang.String resolveAlternateName(java.security.cert.X509Certificate, int, int);
descriptor: (Ljava/security/cert/X509Certificate;II)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual java.security.cert.X509Certificate.getSubjectAlternativeNames:()Ljava/util/Collection;
astore 4
start local 4 1: aload 4
ifnull 13
2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 5
start local 5 3: aload 4
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 7
goto 8
StackMap locals: org.apache.catalina.valves.rewrite.ResolverImpl java.security.cert.X509Certificate int int java.util.Collection java.util.List top java.util.Iterator
StackMap stack:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.List
astore 6
start local 6 5: aload 6
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Integer
astore 8
start local 8 6: aload 8
invokevirtual java.lang.Integer.intValue:()I
iload 2
if_icmpne 8
7: aload 5
aload 6
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 6 8: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
9: aload 5
invokeinterface java.util.List.size:()I
iload 3
if_icmple 13
10: aload 5
iload 3
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
11: areturn
end local 5 end local 4 12: StackMap locals: org.apache.catalina.valves.rewrite.ResolverImpl java.security.cert.X509Certificate int int
StackMap stack: java.lang.Exception
pop
13: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 14 1 certificate Ljava/security/cert/X509Certificate;
0 14 2 type I
0 14 3 n I
1 12 4 alternateNames Ljava/util/Collection<Ljava/util/List<*>;>;
3 12 5 elements Ljava/util/List<Ljava/lang/String;>;
5 8 6 alternateName Ljava/util/List<*>;
6 8 8 alternateNameType Ljava/lang/Integer;
Exception table:
from to target type
0 11 12 Class java.lang.NumberFormatException
0 11 12 Class java.lang.ArrayIndexOutOfBoundsException
0 11 12 Class java.security.cert.CertificateParsingException
MethodParameters:
Name Flags
certificate
type
n
public java.lang.String resolveHttp(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
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
aload 1
invokevirtual org.apache.catalina.connector.Request.getHeader:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: ldc ""
areturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 4 1 key Ljava/lang/String;
1 4 2 header Ljava/lang/String;
MethodParameters:
Name Flags
key
public boolean resolveResource(int, java.lang.String);
descriptor: (ILjava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getContext:()Lorg/apache/catalina/Context;
invokeinterface org.apache.catalina.Context.getResources:()Lorg/apache/catalina/WebResourceRoot;
astore 3
start local 3 1: aload 3
aload 2
invokeinterface org.apache.catalina.WebResourceRoot.getResource:(Ljava/lang/String;)Lorg/apache/catalina/WebResource;
astore 4
start local 4 2: aload 4
invokeinterface org.apache.catalina.WebResource.exists:()Z
ifne 4
3: iconst_0
ireturn
4: StackMap locals: org.apache.catalina.WebResourceRoot org.apache.catalina.WebResource
StackMap stack:
iload 1
tableswitch { // 0 - 2
0: 5
1: 6
2: 7
default: 9
}
5: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.apache.catalina.WebResource.isDirectory:()Z
ireturn
6: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.apache.catalina.WebResource.isFile:()Z
ireturn
7: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.apache.catalina.WebResource.isFile:()Z
ifeq 8
aload 4
invokeinterface org.apache.catalina.WebResource.getContentLength:()J
lconst_0
lcmp
ifle 8
iconst_1
ireturn
StackMap locals:
StackMap stack:
8: iconst_0
ireturn
9: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
0 10 1 type I
0 10 2 name Ljava/lang/String;
1 10 3 resources Lorg/apache/catalina/WebResourceRoot;
2 10 4 resource Lorg/apache/catalina/WebResource;
MethodParameters:
Name Flags
type
name
private static final java.lang.String emptyStringIfNull(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: ldc ""
areturn
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 value Ljava/lang/String;
MethodParameters:
Name Flags
value
public java.nio.charset.Charset getUriCharset();
descriptor: ()Ljava/nio/charset/Charset;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.valves.rewrite.ResolverImpl.request:Lorg/apache/catalina/connector/Request;
invokevirtual org.apache.catalina.connector.Request.getConnector:()Lorg/apache/catalina/connector/Connector;
invokevirtual org.apache.catalina.connector.Connector.getURICharset:()Ljava/nio/charset/Charset;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/valves/rewrite/ResolverImpl;
}
SourceFile: "ResolverImpl.java"