class org.eclipse.jetty.server.handler.MovedContextHandler$Redirector extends org.eclipse.jetty.server.handler.AbstractHandler
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.jetty.server.handler.MovedContextHandler$Redirector
super_class: org.eclipse.jetty.server.handler.AbstractHandler
{
final org.eclipse.jetty.server.handler.MovedContextHandler this$0;
descriptor: Lorg/eclipse/jetty/server/handler/MovedContextHandler;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(org.eclipse.jetty.server.handler.MovedContextHandler);
descriptor: (Lorg/eclipse/jetty/server/handler/MovedContextHandler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 // org.eclipse.jetty.server.handler.MovedContextHandler$Redirector this
0: .line 101
aload 0 /* this */
aload 1
putfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
aload 0 /* this */
invokespecial org.eclipse.jetty.server.handler.AbstractHandler.<init>:()V
return
end local 0 // org.eclipse.jetty.server.handler.MovedContextHandler$Redirector this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/server/handler/MovedContextHandler$Redirector;
MethodParameters:
Name Flags
this$0 final
public void handle(java.lang.String, org.eclipse.jetty.server.Request, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse);
descriptor: (Ljava/lang/String;Lorg/eclipse/jetty/server/Request;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=5
start local 0 // org.eclipse.jetty.server.handler.MovedContextHandler$Redirector this
start local 1 // java.lang.String target
start local 2 // org.eclipse.jetty.server.Request baseRequest
start local 3 // javax.servlet.http.HttpServletRequest request
start local 4 // javax.servlet.http.HttpServletResponse response
0: .line 106
aload 0 /* this */
getfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
getfield org.eclipse.jetty.server.handler.MovedContextHandler._newContextURL:Ljava/lang/String;
ifnonnull 2
1: .line 107
return
2: .line 109
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
getfield org.eclipse.jetty.server.handler.MovedContextHandler._newContextURL:Ljava/lang/String;
astore 5 /* path */
start local 5 // java.lang.String path
3: .line 110
aload 0 /* this */
getfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
getfield org.eclipse.jetty.server.handler.MovedContextHandler._discardPathInfo:Z
ifne 5
aload 3 /* request */
invokeinterface javax.servlet.http.HttpServletRequest.getPathInfo:()Ljava/lang/String;
ifnull 5
4: .line 111
aload 5 /* path */
aload 3 /* request */
invokeinterface javax.servlet.http.HttpServletRequest.getPathInfo:()Ljava/lang/String;
invokestatic org.eclipse.jetty.util.URIUtil.addPaths:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 5 /* path */
5: .line 113
StackMap locals: java.lang.String
StackMap stack:
aload 5 /* path */
invokestatic org.eclipse.jetty.util.URIUtil.hasScheme:(Ljava/lang/String;)Z
ifeq 6
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
goto 7
StackMap locals:
StackMap stack:
6: aload 2 /* baseRequest */
invokevirtual org.eclipse.jetty.server.Request.getRootURL:()Ljava/lang/StringBuilder;
StackMap locals:
StackMap stack: java.lang.StringBuilder
7: astore 6 /* location */
start local 6 // java.lang.StringBuilder location
8: .line 115
aload 6 /* location */
aload 5 /* path */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: .line 116
aload 0 /* this */
getfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
getfield org.eclipse.jetty.server.handler.MovedContextHandler._discardQuery:Z
ifne 14
aload 3 /* request */
invokeinterface javax.servlet.http.HttpServletRequest.getQueryString:()Ljava/lang/String;
ifnull 14
10: .line 118
aload 6 /* location */
bipush 63
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: .line 119
aload 3 /* request */
invokeinterface javax.servlet.http.HttpServletRequest.getQueryString:()Ljava/lang/String;
astore 7 /* q */
start local 7 // java.lang.String q
12: .line 120
aload 7 /* q */
ldc "\r\n?&="
ldc "!"
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 7 /* q */
13: .line 121
aload 6 /* location */
aload 7 /* q */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 7 // java.lang.String q
14: .line 124
StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 4 /* response */
getstatic org.eclipse.jetty.http.HttpHeader.LOCATION:Lorg/eclipse/jetty/http/HttpHeader;
invokevirtual org.eclipse.jetty.http.HttpHeader.asString:()Ljava/lang/String;
aload 6 /* location */
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface javax.servlet.http.HttpServletResponse.setHeader:(Ljava/lang/String;Ljava/lang/String;)V
15: .line 126
aload 0 /* this */
getfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
getfield org.eclipse.jetty.server.handler.MovedContextHandler._expires:Ljava/lang/String;
ifnull 17
16: .line 127
aload 4 /* response */
getstatic org.eclipse.jetty.http.HttpHeader.EXPIRES:Lorg/eclipse/jetty/http/HttpHeader;
invokevirtual org.eclipse.jetty.http.HttpHeader.asString:()Ljava/lang/String;
aload 0 /* this */
getfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
getfield org.eclipse.jetty.server.handler.MovedContextHandler._expires:Ljava/lang/String;
invokeinterface javax.servlet.http.HttpServletResponse.setHeader:(Ljava/lang/String;Ljava/lang/String;)V
17: .line 129
StackMap locals:
StackMap stack:
aload 4 /* response */
aload 0 /* this */
getfield org.eclipse.jetty.server.handler.MovedContextHandler$Redirector.this$0:Lorg/eclipse/jetty/server/handler/MovedContextHandler;
getfield org.eclipse.jetty.server.handler.MovedContextHandler._permanent:Z
ifeq 18
sipush 301
goto 19
StackMap locals:
StackMap stack: javax.servlet.http.HttpServletResponse
18: sipush 302
StackMap locals: org.eclipse.jetty.server.handler.MovedContextHandler$Redirector java.lang.String org.eclipse.jetty.server.Request javax.servlet.http.HttpServletRequest javax.servlet.http.HttpServletResponse java.lang.String java.lang.StringBuilder
StackMap stack: javax.servlet.http.HttpServletResponse int
19: invokeinterface javax.servlet.http.HttpServletResponse.setStatus:(I)V
20: .line 130
aload 4 /* response */
iconst_0
invokeinterface javax.servlet.http.HttpServletResponse.setContentLength:(I)V
21: .line 131
aload 2 /* baseRequest */
iconst_1
invokevirtual org.eclipse.jetty.server.Request.setHandled:(Z)V
22: .line 132
return
end local 6 // java.lang.StringBuilder location
end local 5 // java.lang.String path
end local 4 // javax.servlet.http.HttpServletResponse response
end local 3 // javax.servlet.http.HttpServletRequest request
end local 2 // org.eclipse.jetty.server.Request baseRequest
end local 1 // java.lang.String target
end local 0 // org.eclipse.jetty.server.handler.MovedContextHandler$Redirector this
LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/eclipse/jetty/server/handler/MovedContextHandler$Redirector;
0 23 1 target Ljava/lang/String;
0 23 2 baseRequest Lorg/eclipse/jetty/server/Request;
0 23 3 request Ljavax/servlet/http/HttpServletRequest;
0 23 4 response Ljavax/servlet/http/HttpServletResponse;
3 23 5 path Ljava/lang/String;
8 23 6 location Ljava/lang/StringBuilder;
12 14 7 q Ljava/lang/String;
Exceptions:
throws java.io.IOException, javax.servlet.ServletException
MethodParameters:
Name Flags
target
baseRequest
request
response
}
SourceFile: "MovedContextHandler.java"
NestHost: org.eclipse.jetty.server.handler.MovedContextHandler
InnerClasses:
private Redirector = org.eclipse.jetty.server.handler.MovedContextHandler$Redirector of org.eclipse.jetty.server.handler.MovedContextHandler