class org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution implements org.springframework.http.client.ClientHttpRequestExecution
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution
  super_class: java.lang.Object
{
  private final java.util.Iterator<org.springframework.http.client.ClientHttpRequestInterceptor> iterator;
    descriptor: Ljava/util/Iterator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Iterator<Lorg/springframework/http/client/ClientHttpRequestInterceptor;>;

  final org.springframework.http.client.InterceptingClientHttpRequest this$0;
    descriptor: Lorg/springframework/http/client/InterceptingClientHttpRequest;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(org.springframework.http.client.InterceptingClientHttpRequest);
    descriptor: (Lorg/springframework/http/client/InterceptingClientHttpRequest;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution this
         0: .line 84
            aload 0 /* this */
            aload 1
            putfield org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution.this$0:Lorg/springframework/http/client/InterceptingClientHttpRequest;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 85
            aload 0 /* this */
            aload 1
            getfield org.springframework.http.client.InterceptingClientHttpRequest.interceptors:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            putfield org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution.iterator:Ljava/util/Iterator;
         2: .line 86
            return
        end local 0 // org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/springframework/http/client/InterceptingClientHttpRequest$InterceptingRequestExecution;
    MethodParameters:
        Name  Flags
      this$0  final

  public org.springframework.http.client.ClientHttpResponse execute(org.springframework.http.HttpRequest, byte[]);
    descriptor: (Lorg/springframework/http/HttpRequest;[B)Lorg/springframework/http/client/ClientHttpResponse;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution this
        start local 1 // org.springframework.http.HttpRequest request
        start local 2 // byte[] body
         0: .line 90
            aload 0 /* this */
            getfield org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 3
         1: .line 91
            aload 0 /* this */
            getfield org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.springframework.http.client.ClientHttpRequestInterceptor
            astore 3 /* nextInterceptor */
        start local 3 // org.springframework.http.client.ClientHttpRequestInterceptor nextInterceptor
         2: .line 92
            aload 3 /* nextInterceptor */
            aload 1 /* request */
            aload 2 /* body */
            aload 0 /* this */
            invokeinterface org.springframework.http.client.ClientHttpRequestInterceptor.intercept:(Lorg/springframework/http/HttpRequest;[BLorg/springframework/http/client/ClientHttpRequestExecution;)Lorg/springframework/http/client/ClientHttpResponse;
            areturn
        end local 3 // org.springframework.http.client.ClientHttpRequestInterceptor nextInterceptor
         3: .line 95
      StackMap locals:
      StackMap stack:
            aload 1 /* request */
            invokeinterface org.springframework.http.HttpRequest.getMethod:()Lorg/springframework/http/HttpMethod;
            astore 3 /* method */
        start local 3 // org.springframework.http.HttpMethod method
         4: .line 96
            aload 3 /* method */
            ifnull 5
            iconst_1
            goto 6
      StackMap locals: org.springframework.http.HttpMethod
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: ldc "No standard HTTP method"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         7: .line 97
            aload 0 /* this */
            getfield org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution.this$0:Lorg/springframework/http/client/InterceptingClientHttpRequest;
            getfield org.springframework.http.client.InterceptingClientHttpRequest.requestFactory:Lorg/springframework/http/client/ClientHttpRequestFactory;
            aload 1 /* request */
            invokeinterface org.springframework.http.HttpRequest.getURI:()Ljava/net/URI;
            aload 3 /* method */
            invokeinterface org.springframework.http.client.ClientHttpRequestFactory.createRequest:(Ljava/net/URI;Lorg/springframework/http/HttpMethod;)Lorg/springframework/http/client/ClientHttpRequest;
            astore 4 /* delegate */
        start local 4 // org.springframework.http.client.ClientHttpRequest delegate
         8: .line 98
            aload 1 /* request */
            invokeinterface org.springframework.http.HttpRequest.getHeaders:()Lorg/springframework/http/HttpHeaders;
            aload 4 /* delegate */
            invokedynamic accept(Lorg/springframework/http/client/ClientHttpRequest;)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/client/InterceptingClientHttpRequest$InterceptingRequestExecution.lambda$0(Lorg/springframework/http/client/ClientHttpRequest;Ljava/lang/String;Ljava/util/List;)V (6)
                  (Ljava/lang/String;Ljava/util/List;)V
            invokevirtual org.springframework.http.HttpHeaders.forEach:(Ljava/util/function/BiConsumer;)V
         9: .line 99
            aload 2 /* body */
            arraylength
            ifle 15
        10: .line 100
            aload 4 /* delegate */
            instanceof org.springframework.http.StreamingHttpOutputMessage
            ifeq 14
        11: .line 101
            aload 4 /* delegate */
            checkcast org.springframework.http.StreamingHttpOutputMessage
            astore 5 /* streamingOutputMessage */
        start local 5 // org.springframework.http.StreamingHttpOutputMessage streamingOutputMessage
        12: .line 102
            aload 5 /* streamingOutputMessage */
            aload 2 /* body */
            invokedynamic writeTo([B)Lorg/springframework/http/StreamingHttpOutputMessage$Body;
              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/io/OutputStream;)V
                  org/springframework/http/client/InterceptingClientHttpRequest$InterceptingRequestExecution.lambda$1([BLjava/io/OutputStream;)V (6)
                  (Ljava/io/OutputStream;)V
            invokeinterface org.springframework.http.StreamingHttpOutputMessage.setBody:(Lorg/springframework/http/StreamingHttpOutputMessage$Body;)V
        end local 5 // org.springframework.http.StreamingHttpOutputMessage streamingOutputMessage
        13: .line 103
            goto 15
        14: .line 105
      StackMap locals: org.springframework.http.client.ClientHttpRequest
      StackMap stack:
            aload 2 /* body */
            aload 4 /* delegate */
            invokeinterface org.springframework.http.client.ClientHttpRequest.getBody:()Ljava/io/OutputStream;
            invokestatic org.springframework.util.StreamUtils.copy:([BLjava/io/OutputStream;)V
        15: .line 108
      StackMap locals:
      StackMap stack:
            aload 4 /* delegate */
            invokeinterface org.springframework.http.client.ClientHttpRequest.execute:()Lorg/springframework/http/client/ClientHttpResponse;
            areturn
        end local 4 // org.springframework.http.client.ClientHttpRequest delegate
        end local 3 // org.springframework.http.HttpMethod method
        end local 2 // byte[] body
        end local 1 // org.springframework.http.HttpRequest request
        end local 0 // org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   16     0                    this  Lorg/springframework/http/client/InterceptingClientHttpRequest$InterceptingRequestExecution;
            0   16     1                 request  Lorg/springframework/http/HttpRequest;
            0   16     2                    body  [B
            2    3     3         nextInterceptor  Lorg/springframework/http/client/ClientHttpRequestInterceptor;
            4   16     3                  method  Lorg/springframework/http/HttpMethod;
            8   16     4                delegate  Lorg/springframework/http/client/ClientHttpRequest;
           12   13     5  streamingOutputMessage  Lorg/springframework/http/StreamingHttpOutputMessage;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      request  
      body     

  private static void lambda$0(org.springframework.http.client.ClientHttpRequest, java.lang.String, java.util.List);
    descriptor: (Lorg/springframework/http/client/ClientHttpRequest;Ljava/lang/String;Ljava/util/List;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 1 // java.lang.String key
        start local 2 // java.util.List value
         0: .line 98
            aload 0
            invokeinterface org.springframework.http.client.ClientHttpRequest.getHeaders:()Lorg/springframework/http/HttpHeaders;
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual org.springframework.http.HttpHeaders.addAll:(Ljava/lang/String;Ljava/util/List;)V
            return
        end local 2 // java.util.List value
        end local 1 // java.lang.String key
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     1    key  Ljava/lang/String;
            0    1     2  value  Ljava/util/List<Ljava/lang/String;>;

  private static void lambda$1(byte[], java.io.OutputStream);
    descriptor: ([BLjava/io/OutputStream;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.io.OutputStream outputStream
         0: .line 102
            aload 0
            aload 1 /* outputStream */
            invokestatic org.springframework.util.StreamUtils.copy:([BLjava/io/OutputStream;)V
            return
        end local 1 // java.io.OutputStream outputStream
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     1  outputStream  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
}
SourceFile: "InterceptingClientHttpRequest.java"
NestHost: org.springframework.http.client.InterceptingClientHttpRequest
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Body = org.springframework.http.StreamingHttpOutputMessage$Body of org.springframework.http.StreamingHttpOutputMessage
  private InterceptingRequestExecution = org.springframework.http.client.InterceptingClientHttpRequest$InterceptingRequestExecution of org.springframework.http.client.InterceptingClientHttpRequest