class org.springframework.http.server.reactive.ServletServerHttpResponse extends org.springframework.http.server.reactive.AbstractListenerServerHttpResponse
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.http.server.reactive.ServletServerHttpResponse
  super_class: org.springframework.http.server.reactive.AbstractListenerServerHttpResponse
{
  private final javax.servlet.http.HttpServletResponse response;
    descriptor: Ljavax/servlet/http/HttpServletResponse;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.servlet.ServletOutputStream outputStream;
    descriptor: Ljavax/servlet/ServletOutputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int bufferSize;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private volatile org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyFlushProcessor bodyFlushProcessor;
    descriptor: Lorg/springframework/http/server/reactive/ServletServerHttpResponse$ResponseBodyFlushProcessor;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private volatile org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyProcessor bodyProcessor;
    descriptor: Lorg/springframework/http/server/reactive/ServletServerHttpResponse$ResponseBodyProcessor;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private volatile boolean flushOnNext;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private final org.springframework.http.server.reactive.ServletServerHttpRequest request;
    descriptor: Lorg/springframework/http/server/reactive/ServletServerHttpRequest;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(javax.servlet.http.HttpServletResponse, javax.servlet.AsyncContext, org.springframework.core.io.buffer.DataBufferFactory, int, org.springframework.http.server.reactive.ServletServerHttpRequest);
    descriptor: (Ljavax/servlet/http/HttpServletResponse;Ljavax/servlet/AsyncContext;Lorg/springframework/core/io/buffer/DataBufferFactory;ILorg/springframework/http/server/reactive/ServletServerHttpRequest;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
        start local 1 // javax.servlet.http.HttpServletResponse response
        start local 2 // javax.servlet.AsyncContext asyncContext
        start local 3 // org.springframework.core.io.buffer.DataBufferFactory bufferFactory
        start local 4 // int bufferSize
        start local 5 // org.springframework.http.server.reactive.ServletServerHttpRequest request
         0: .line 70
            aload 0 /* this */
            new org.springframework.http.HttpHeaders
            dup
            invokespecial org.springframework.http.HttpHeaders.<init>:()V
            aload 1 /* response */
            aload 2 /* asyncContext */
            aload 3 /* bufferFactory */
            iload 4 /* bufferSize */
            aload 5 /* request */
            invokespecial org.springframework.http.server.reactive.ServletServerHttpResponse.<init>:(Lorg/springframework/http/HttpHeaders;Ljavax/servlet/http/HttpServletResponse;Ljavax/servlet/AsyncContext;Lorg/springframework/core/io/buffer/DataBufferFactory;ILorg/springframework/http/server/reactive/ServletServerHttpRequest;)V
         1: .line 71
            return
        end local 5 // org.springframework.http.server.reactive.ServletServerHttpRequest request
        end local 4 // int bufferSize
        end local 3 // org.springframework.core.io.buffer.DataBufferFactory bufferFactory
        end local 2 // javax.servlet.AsyncContext asyncContext
        end local 1 // javax.servlet.http.HttpServletResponse response
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
            0    2     1       response  Ljavax/servlet/http/HttpServletResponse;
            0    2     2   asyncContext  Ljavax/servlet/AsyncContext;
            0    2     3  bufferFactory  Lorg/springframework/core/io/buffer/DataBufferFactory;
            0    2     4     bufferSize  I
            0    2     5        request  Lorg/springframework/http/server/reactive/ServletServerHttpRequest;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      response       
      asyncContext   
      bufferFactory  
      bufferSize     
      request        

  public void <init>(org.springframework.http.HttpHeaders, javax.servlet.http.HttpServletResponse, javax.servlet.AsyncContext, org.springframework.core.io.buffer.DataBufferFactory, int, org.springframework.http.server.reactive.ServletServerHttpRequest);
    descriptor: (Lorg/springframework/http/HttpHeaders;Ljavax/servlet/http/HttpServletResponse;Ljavax/servlet/AsyncContext;Lorg/springframework/core/io/buffer/DataBufferFactory;ILorg/springframework/http/server/reactive/ServletServerHttpRequest;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=7
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 90
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe method setWriteListener(ServletServerHttpResponse.ResponseBodyWriteListener) is undefined for the type ServletOutputStream\n\tThe method getStatus() is undefined for the type HttpServletResponse\n\tThe method setHttpOnly(boolean) is undefined for the type Cookie\n\tThe method isReady() is undefined for the type ServletOutputStream\n\tThe method isReady() is undefined for the type ServletOutputStream\n\tThe method isReady() is undefined for the type ServletOutputStream\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      headers        
      response       
      asyncContext   
      bufferFactory  
      bufferSize     
      request        

  public <T> T getNativeResponse();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 97
            aload 0 /* this */
            getfield org.springframework.http.server.reactive.ServletServerHttpResponse.response:Ljavax/servlet/http/HttpServletResponse;
            areturn
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
    Signature: <T:Ljava/lang/Object;>()TT;

  public org.springframework.http.HttpStatus getStatusCode();
    descriptor: ()Lorg/springframework/http/HttpStatus;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 103
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method getStatus() is undefined for the type HttpServletResponse\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;

  protected void applyStatusCode();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 108
            aload 0 /* this */
            invokevirtual org.springframework.http.server.reactive.ServletServerHttpResponse.getStatusCodeValue:()Ljava/lang/Integer;
            astore 1 /* statusCode */
        start local 1 // java.lang.Integer statusCode
         1: .line 109
            aload 1 /* statusCode */
            ifnull 3
         2: .line 110
            aload 0 /* this */
            getfield org.springframework.http.server.reactive.ServletServerHttpResponse.response:Ljavax/servlet/http/HttpServletResponse;
            aload 1 /* statusCode */
            invokevirtual java.lang.Integer.intValue:()I
            invokeinterface javax.servlet.http.HttpServletResponse.setStatus:(I)V
         3: .line 112
      StackMap locals: java.lang.Integer
      StackMap stack:
            return
        end local 1 // java.lang.Integer statusCode
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
            1    4     1  statusCode  Ljava/lang/Integer;

  protected void applyHeaders();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 116
            aload 0 /* this */
            invokevirtual org.springframework.http.server.reactive.ServletServerHttpResponse.getHeaders:()Lorg/springframework/http/HttpHeaders;
            aload 0 /* this */
            invokedynamic accept(Lorg/springframework/http/server/reactive/ServletServerHttpResponse;)Ljava/util/function/BiConsumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)V
                  org/springframework/http/server/reactive/ServletServerHttpResponse.lambda$0(Ljava/lang/String;Ljava/util/List;)V (7)
                  (Ljava/lang/String;Ljava/util/List;)V
            invokevirtual org.springframework.http.HttpHeaders.forEach:(Ljava/util/function/BiConsumer;)V
         1: .line 121
            aload 0 /* this */
            invokevirtual org.springframework.http.server.reactive.ServletServerHttpResponse.getHeaders:()Lorg/springframework/http/HttpHeaders;
            invokevirtual org.springframework.http.HttpHeaders.getContentType:()Lorg/springframework/http/MediaType;
            astore 1 /* contentType */
        start local 1 // org.springframework.http.MediaType contentType
         2: .line 122
            aload 0 /* this */
            getfield org.springframework.http.server.reactive.ServletServerHttpResponse.response:Ljavax/servlet/http/HttpServletResponse;
            invokeinterface javax.servlet.http.HttpServletResponse.getContentType:()Ljava/lang/String;
            ifnonnull 4
            aload 1 /* contentType */
            ifnull 4
         3: .line 123
            aload 0 /* this */
            getfield org.springframework.http.server.reactive.ServletServerHttpResponse.response:Ljavax/servlet/http/HttpServletResponse;
            aload 1 /* contentType */
            invokevirtual org.springframework.http.MediaType.toString:()Ljava/lang/String;
            invokeinterface javax.servlet.http.HttpServletResponse.setContentType:(Ljava/lang/String;)V
         4: .line 125
      StackMap locals: org.springframework.http.MediaType
      StackMap stack:
            aload 1 /* contentType */
            ifnull 5
            aload 1 /* contentType */
            invokevirtual org.springframework.http.MediaType.getCharset:()Ljava/nio/charset/Charset;
            goto 6
      StackMap locals:
      StackMap stack:
         5: aconst_null
      StackMap locals:
      StackMap stack: java.nio.charset.Charset
         6: astore 2 /* charset */
        start local 2 // java.nio.charset.Charset charset
         7: .line 126
            aload 0 /* this */
            getfield org.springframework.http.server.reactive.ServletServerHttpResponse.response:Ljavax/servlet/http/HttpServletResponse;
            invokeinterface javax.servlet.http.HttpServletResponse.getCharacterEncoding:()Ljava/lang/String;
            ifnonnull 9
            aload 2 /* charset */
            ifnull 9
         8: .line 127
            aload 0 /* this */
            getfield org.springframework.http.server.reactive.ServletServerHttpResponse.response:Ljavax/servlet/http/HttpServletResponse;
            aload 2 /* charset */
            invokevirtual java.nio.charset.Charset.name:()Ljava/lang/String;
            invokeinterface javax.servlet.http.HttpServletResponse.setCharacterEncoding:(Ljava/lang/String;)V
         9: .line 129
      StackMap locals: java.nio.charset.Charset
      StackMap stack:
            return
        end local 2 // java.nio.charset.Charset charset
        end local 1 // org.springframework.http.MediaType contentType
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
            2   10     1  contentType  Lorg/springframework/http/MediaType;
            7   10     2      charset  Ljava/nio/charset/Charset;

  protected void applyCookies();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 146
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method setHttpOnly(boolean) is undefined for the type Cookie\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;

  protected org.reactivestreams.Processor<? super org.reactivestreams.Publisher<? extends org.springframework.core.io.buffer.DataBuffer>, java.lang.Void> createBodyFlushProcessor();
    descriptor: ()Lorg/reactivestreams/Processor;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 154
            new org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyFlushProcessor
            dup
            aload 0 /* this */
            invokespecial org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyFlushProcessor.<init>:(Lorg/springframework/http/server/reactive/ServletServerHttpResponse;)V
            astore 1 /* processor */
        start local 1 // org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyFlushProcessor processor
         1: .line 155
            aload 0 /* this */
            aload 1 /* processor */
            putfield org.springframework.http.server.reactive.ServletServerHttpResponse.bodyFlushProcessor:Lorg/springframework/http/server/reactive/ServletServerHttpResponse$ResponseBodyFlushProcessor;
         2: .line 156
            aload 1 /* processor */
            areturn
        end local 1 // org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyFlushProcessor processor
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
            1    3     1  processor  Lorg/springframework/http/server/reactive/ServletServerHttpResponse$ResponseBodyFlushProcessor;
    Signature: ()Lorg/reactivestreams/Processor<-Lorg/reactivestreams/Publisher<+Lorg/springframework/core/io/buffer/DataBuffer;>;Ljava/lang/Void;>;

  protected int writeToOutputStream(org.springframework.core.io.buffer.DataBuffer);
    descriptor: (Lorg/springframework/core/io/buffer/DataBuffer;)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 171
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method isReady() is undefined for the type ServletOutputStream\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      dataBuffer  

  private void flush();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 180
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method isReady() is undefined for the type ServletOutputStream\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
    Exceptions:
      throws java.io.IOException

  private boolean isWritePossible();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
         0: .line 196
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method isReady() is undefined for the type ServletOutputStream\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;

  private void lambda$0(java.lang.String, java.util.List);
    descriptor: (Ljava/lang/String;Ljava/util/List;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
        start local 1 // java.lang.String headerName
        start local 2 // java.util.List headerValues
         0: .line 117
            aload 2 /* headerValues */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 3
      StackMap locals: org.springframework.http.server.reactive.ServletServerHttpResponse java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* headerValue */
        start local 3 // java.lang.String headerValue
         2: .line 118
            aload 0 /* this */
            getfield org.springframework.http.server.reactive.ServletServerHttpResponse.response:Ljavax/servlet/http/HttpServletResponse;
            aload 1 /* headerName */
            aload 3 /* headerValue */
            invokeinterface javax.servlet.http.HttpServletResponse.addHeader:(Ljava/lang/String;Ljava/lang/String;)V
        end local 3 // java.lang.String headerValue
         3: .line 117
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 120
            return
        end local 2 // java.util.List headerValues
        end local 1 // java.lang.String headerName
        end local 0 // org.springframework.http.server.reactive.ServletServerHttpResponse this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/springframework/http/server/reactive/ServletServerHttpResponse;
            0    5     1    headerName  Ljava/lang/String;
            0    5     2  headerValues  Ljava/util/List<Ljava/lang/String;>;
            2    3     3   headerValue  Ljava/lang/String;
}
SourceFile: "ServletServerHttpResponse.java"
NestMembers:
  org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseAsyncListener  org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyFlushProcessor  org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyProcessor  org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyWriteListener
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  private final ResponseAsyncListener = org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseAsyncListener of org.springframework.http.server.reactive.ServletServerHttpResponse
  private ResponseBodyFlushProcessor = org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyFlushProcessor of org.springframework.http.server.reactive.ServletServerHttpResponse
  private ResponseBodyProcessor = org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyProcessor of org.springframework.http.server.reactive.ServletServerHttpResponse
  private ResponseBodyWriteListener = org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseBodyWriteListener of org.springframework.http.server.reactive.ServletServerHttpResponse