public class org.eclipse.jetty.server.handler.BufferedResponseHandler extends org.eclipse.jetty.server.handler.HandlerWrapper
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jetty.server.handler.BufferedResponseHandler
super_class: org.eclipse.jetty.server.handler.HandlerWrapper
{
static final org.eclipse.jetty.util.log.Logger LOG;
descriptor: Lorg/eclipse/jetty/util/log/Logger;
flags: (0x0018) ACC_STATIC, ACC_FINAL
private final org.eclipse.jetty.util.IncludeExclude<java.lang.String> _methods;
descriptor: Lorg/eclipse/jetty/util/IncludeExclude;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/eclipse/jetty/util/IncludeExclude<Ljava/lang/String;>;
private final org.eclipse.jetty.util.IncludeExclude<java.lang.String> _paths;
descriptor: Lorg/eclipse/jetty/util/IncludeExclude;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/eclipse/jetty/util/IncludeExclude<Ljava/lang/String;>;
private final org.eclipse.jetty.util.IncludeExclude<java.lang.String> _mimeTypes;
descriptor: Lorg/eclipse/jetty/util/IncludeExclude;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/eclipse/jetty/util/IncludeExclude<Ljava/lang/String;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
invokestatic org.eclipse.jetty.util.log.Log.getLogger:(Ljava/lang/Class;)Lorg/eclipse/jetty/util/log/Logger;
putstatic org.eclipse.jetty.server.handler.BufferedResponseHandler.LOG:Lorg/eclipse/jetty/util/log/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=1
start local 0 0: aload 0
invokespecial org.eclipse.jetty.server.handler.HandlerWrapper.<init>:()V
1: aload 0
new org.eclipse.jetty.util.IncludeExclude
dup
invokespecial org.eclipse.jetty.util.IncludeExclude.<init>:()V
putfield org.eclipse.jetty.server.handler.BufferedResponseHandler._methods:Lorg/eclipse/jetty/util/IncludeExclude;
2: aload 0
new org.eclipse.jetty.util.IncludeExclude
dup
ldc Lorg/eclipse/jetty/http/pathmap/PathSpecSet;
invokespecial org.eclipse.jetty.util.IncludeExclude.<init>:(Ljava/lang/Class;)V
putfield org.eclipse.jetty.server.handler.BufferedResponseHandler._paths:Lorg/eclipse/jetty/util/IncludeExclude;
3: aload 0
new org.eclipse.jetty.util.IncludeExclude
dup
invokespecial org.eclipse.jetty.util.IncludeExclude.<init>:()V
putfield org.eclipse.jetty.server.handler.BufferedResponseHandler._mimeTypes:Lorg/eclipse/jetty/util/IncludeExclude;
4: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._methods:Lorg/eclipse/jetty/util/IncludeExclude;
getstatic org.eclipse.jetty.http.HttpMethod.GET:Lorg/eclipse/jetty/http/HttpMethod;
invokevirtual org.eclipse.jetty.http.HttpMethod.asString:()Ljava/lang/String;
invokevirtual org.eclipse.jetty.util.IncludeExclude.include:(Ljava/lang/Object;)V
5: invokestatic org.eclipse.jetty.http.MimeTypes.getKnownMimeTypes:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 2
goto 11
StackMap locals: org.eclipse.jetty.server.handler.BufferedResponseHandler top java.util.Iterator
StackMap stack:
6: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 7: aload 1
ldc "image/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 10
8: aload 1
ldc "audio/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 10
9: aload 1
ldc "video/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 11
10: StackMap locals: org.eclipse.jetty.server.handler.BufferedResponseHandler java.lang.String java.util.Iterator
StackMap stack:
aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._mimeTypes:Lorg/eclipse/jetty/util/IncludeExclude;
aload 1
invokevirtual org.eclipse.jetty.util.IncludeExclude.exclude:(Ljava/lang/Object;)V
end local 1 11: StackMap locals: org.eclipse.jetty.server.handler.BufferedResponseHandler top java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
12: getstatic org.eclipse.jetty.server.handler.BufferedResponseHandler.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "{} mime types {}"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._mimeTypes:Lorg/eclipse/jetty/util/IncludeExclude;
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
13: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
7 11 1 type Ljava/lang/String;
public org.eclipse.jetty.util.IncludeExclude<java.lang.String> getMethodIncludeExclude();
descriptor: ()Lorg/eclipse/jetty/util/IncludeExclude;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._methods:Lorg/eclipse/jetty/util/IncludeExclude;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
Signature: ()Lorg/eclipse/jetty/util/IncludeExclude<Ljava/lang/String;>;
public org.eclipse.jetty.util.IncludeExclude<java.lang.String> getPathIncludeExclude();
descriptor: ()Lorg/eclipse/jetty/util/IncludeExclude;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._paths:Lorg/eclipse/jetty/util/IncludeExclude;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
Signature: ()Lorg/eclipse/jetty/util/IncludeExclude<Ljava/lang/String;>;
public org.eclipse.jetty.util.IncludeExclude<java.lang.String> getMimeIncludeExclude();
descriptor: ()Lorg/eclipse/jetty/util/IncludeExclude;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._mimeTypes:Lorg/eclipse/jetty/util/IncludeExclude;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
Signature: ()Lorg/eclipse/jetty/util/IncludeExclude<Ljava/lang/String;>;
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=6, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual org.eclipse.jetty.server.Request.getServletContext:()Ljavax/servlet/ServletContext;
astore 5
start local 5 1: aload 5
ifnonnull 2
aload 2
invokevirtual org.eclipse.jetty.server.Request.getRequestURI:()Ljava/lang/String;
goto 3
StackMap locals: javax.servlet.ServletContext
StackMap stack:
2: aload 2
invokevirtual org.eclipse.jetty.server.Request.getServletPath:()Ljava/lang/String;
aload 2
invokevirtual org.eclipse.jetty.server.Request.getPathInfo:()Ljava/lang/String;
invokestatic org.eclipse.jetty.util.URIUtil.addPaths:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
3: astore 6
start local 6 4: getstatic org.eclipse.jetty.server.handler.BufferedResponseHandler.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "{} handle {} in {}"
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 2
aastore
dup
iconst_2
aload 5
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
5: aload 2
invokevirtual org.eclipse.jetty.server.Request.getResponse:()Lorg/eclipse/jetty/server/Response;
invokevirtual org.eclipse.jetty.server.Response.getHttpOutput:()Lorg/eclipse/jetty/server/HttpOutput;
astore 7
start local 7 6: aload 7
invokevirtual org.eclipse.jetty.server.HttpOutput.getInterceptor:()Lorg/eclipse/jetty/server/HttpOutput$Interceptor;
astore 8
start local 8 7: goto 13
8: StackMap locals: java.lang.String org.eclipse.jetty.server.HttpOutput org.eclipse.jetty.server.HttpOutput$Interceptor
StackMap stack:
aload 8
instanceof org.eclipse.jetty.server.handler.BufferedResponseHandler$BufferedInterceptor
ifeq 12
9: getstatic org.eclipse.jetty.server.handler.BufferedResponseHandler.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "{} already intercepting {}"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 3
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
10: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._handler:Lorg/eclipse/jetty/server/Handler;
aload 1
aload 2
aload 3
aload 4
invokeinterface org.eclipse.jetty.server.Handler.handle:(Ljava/lang/String;Lorg/eclipse/jetty/server/Request;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
11: return
12: StackMap locals:
StackMap stack:
aload 8
invokeinterface org.eclipse.jetty.server.HttpOutput$Interceptor.getNextInterceptor:()Lorg/eclipse/jetty/server/HttpOutput$Interceptor;
astore 8
13: StackMap locals:
StackMap stack:
aload 8
ifnonnull 8
14: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._methods:Lorg/eclipse/jetty/util/IncludeExclude;
aload 2
invokevirtual org.eclipse.jetty.server.Request.getMethod:()Ljava/lang/String;
invokevirtual org.eclipse.jetty.util.IncludeExclude.test:(Ljava/lang/Object;)Z
ifne 18
15: getstatic org.eclipse.jetty.server.handler.BufferedResponseHandler.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "{} excluded by method {}"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 3
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
16: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._handler:Lorg/eclipse/jetty/server/Handler;
aload 1
aload 2
aload 3
aload 4
invokeinterface org.eclipse.jetty.server.Handler.handle:(Ljava/lang/String;Lorg/eclipse/jetty/server/Request;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
17: return
18: StackMap locals:
StackMap stack:
aload 0
aload 6
invokevirtual org.eclipse.jetty.server.handler.BufferedResponseHandler.isPathBufferable:(Ljava/lang/String;)Z
ifne 22
19: getstatic org.eclipse.jetty.server.handler.BufferedResponseHandler.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "{} excluded by path {}"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 3
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
20: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._handler:Lorg/eclipse/jetty/server/Handler;
aload 1
aload 2
aload 3
aload 4
invokeinterface org.eclipse.jetty.server.Handler.handle:(Ljava/lang/String;Lorg/eclipse/jetty/server/Request;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
21: return
22: StackMap locals:
StackMap stack:
aload 5
ifnonnull 23
aload 6
invokestatic org.eclipse.jetty.http.MimeTypes.getDefaultMimeByExtension:(Ljava/lang/String;)Ljava/lang/String;
goto 24
StackMap locals:
StackMap stack:
23: aload 5
aload 6
invokeinterface javax.servlet.ServletContext.getMimeType:(Ljava/lang/String;)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
24: astore 9
start local 9 25: aload 9
ifnull 31
26: aload 9
invokestatic org.eclipse.jetty.http.MimeTypes.getContentTypeWithoutCharset:(Ljava/lang/String;)Ljava/lang/String;
astore 9
27: aload 0
aload 9
invokevirtual org.eclipse.jetty.server.handler.BufferedResponseHandler.isMimeTypeBufferable:(Ljava/lang/String;)Z
ifne 31
28: getstatic org.eclipse.jetty.server.handler.BufferedResponseHandler.LOG:Lorg/eclipse/jetty/util/log/Logger;
ldc "{} excluded by path suffix mime type {}"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 3
aastore
invokeinterface org.eclipse.jetty.util.log.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
29: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._handler:Lorg/eclipse/jetty/server/Handler;
aload 1
aload 2
aload 3
aload 4
invokeinterface org.eclipse.jetty.server.Handler.handle:(Ljava/lang/String;Lorg/eclipse/jetty/server/Request;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
30: return
31: StackMap locals: java.lang.String
StackMap stack:
aload 7
new org.eclipse.jetty.server.handler.BufferedResponseHandler$BufferedInterceptor
dup
aload 0
aload 2
invokevirtual org.eclipse.jetty.server.Request.getHttpChannel:()Lorg/eclipse/jetty/server/HttpChannel;
aload 7
invokevirtual org.eclipse.jetty.server.HttpOutput.getInterceptor:()Lorg/eclipse/jetty/server/HttpOutput$Interceptor;
invokespecial org.eclipse.jetty.server.handler.BufferedResponseHandler$BufferedInterceptor.<init>:(Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;Lorg/eclipse/jetty/server/HttpChannel;Lorg/eclipse/jetty/server/HttpOutput$Interceptor;)V
invokevirtual org.eclipse.jetty.server.HttpOutput.setInterceptor:(Lorg/eclipse/jetty/server/HttpOutput$Interceptor;)V
32: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._handler:Lorg/eclipse/jetty/server/Handler;
ifnull 34
33: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._handler:Lorg/eclipse/jetty/server/Handler;
aload 1
aload 2
aload 3
aload 4
invokeinterface org.eclipse.jetty.server.Handler.handle:(Ljava/lang/String;Lorg/eclipse/jetty/server/Request;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V
34: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 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 35 0 this Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
0 35 1 target Ljava/lang/String;
0 35 2 baseRequest Lorg/eclipse/jetty/server/Request;
0 35 3 request Ljavax/servlet/http/HttpServletRequest;
0 35 4 response Ljavax/servlet/http/HttpServletResponse;
1 35 5 context Ljavax/servlet/ServletContext;
4 35 6 path Ljava/lang/String;
6 35 7 out Lorg/eclipse/jetty/server/HttpOutput;
7 35 8 interceptor Lorg/eclipse/jetty/server/HttpOutput$Interceptor;
25 35 9 mimeType Ljava/lang/String;
Exceptions:
throws java.io.IOException, javax.servlet.ServletException
MethodParameters:
Name Flags
target
baseRequest
request
response
protected boolean isMimeTypeBufferable(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._mimeTypes:Lorg/eclipse/jetty/util/IncludeExclude;
aload 1
invokevirtual org.eclipse.jetty.util.IncludeExclude.test:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
0 1 1 mimetype Ljava/lang/String;
MethodParameters:
Name Flags
mimetype
protected boolean isPathBufferable(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jetty.server.handler.BufferedResponseHandler._paths:Lorg/eclipse/jetty/util/IncludeExclude;
aload 1
invokevirtual org.eclipse.jetty.util.IncludeExclude.test:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jetty/server/handler/BufferedResponseHandler;
0 3 1 requestURI Ljava/lang/String;
MethodParameters:
Name Flags
requestURI
}
SourceFile: "BufferedResponseHandler.java"
NestMembers:
org.eclipse.jetty.server.handler.BufferedResponseHandler$BufferedInterceptor org.eclipse.jetty.server.handler.BufferedResponseHandler$BufferedInterceptor$1
InnerClasses:
public abstract Interceptor = org.eclipse.jetty.server.HttpOutput$Interceptor of org.eclipse.jetty.server.HttpOutput
private BufferedInterceptor = org.eclipse.jetty.server.handler.BufferedResponseHandler$BufferedInterceptor of org.eclipse.jetty.server.handler.BufferedResponseHandler