public class org.springframework.http.client.reactive.JettyClientHttpConnector implements org.springframework.http.client.reactive.ClientHttpConnector
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.http.client.reactive.JettyClientHttpConnector
super_class: java.lang.Object
{
private final org.eclipse.jetty.client.HttpClient httpClient;
descriptor: Lorg/eclipse/jetty/client/HttpClient;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.springframework.core.io.buffer.DataBufferFactory bufferFactory;
descriptor: Lorg/springframework/core/io/buffer/DataBufferFactory;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
new org.eclipse.jetty.client.HttpClient
dup
invokespecial org.eclipse.jetty.client.HttpClient.<init>:()V
invokespecial org.springframework.http.client.reactive.JettyClientHttpConnector.<init>:(Lorg/eclipse/jetty/client/HttpClient;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/http/client/reactive/JettyClientHttpConnector;
public void <init>(org.springframework.http.client.reactive.JettyResourceFactory, java.util.function.Consumer<org.eclipse.jetty.client.HttpClient>);
descriptor: (Lorg/springframework/http/client/reactive/JettyResourceFactory;Ljava/util/function/Consumer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.springframework.core.io.buffer.DefaultDataBufferFactory
dup
invokespecial org.springframework.core.io.buffer.DefaultDataBufferFactory.<init>:()V
putfield org.springframework.http.client.reactive.JettyClientHttpConnector.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
2: new org.eclipse.jetty.client.HttpClient
dup
invokespecial org.eclipse.jetty.client.HttpClient.<init>:()V
astore 3
start local 3 3: aload 3
aload 1
invokevirtual org.springframework.http.client.reactive.JettyResourceFactory.getExecutor:()Ljava/util/concurrent/Executor;
invokevirtual org.eclipse.jetty.client.HttpClient.setExecutor:(Ljava/util/concurrent/Executor;)V
4: aload 3
aload 1
invokevirtual org.springframework.http.client.reactive.JettyResourceFactory.getByteBufferPool:()Lorg/eclipse/jetty/io/ByteBufferPool;
invokevirtual org.eclipse.jetty.client.HttpClient.setByteBufferPool:(Lorg/eclipse/jetty/io/ByteBufferPool;)V
5: aload 3
aload 1
invokevirtual org.springframework.http.client.reactive.JettyResourceFactory.getScheduler:()Lorg/eclipse/jetty/util/thread/Scheduler;
invokevirtual org.eclipse.jetty.client.HttpClient.setScheduler:(Lorg/eclipse/jetty/util/thread/Scheduler;)V
6: aload 2
ifnull 8
7: aload 2
aload 3
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
8: StackMap locals: org.springframework.http.client.reactive.JettyClientHttpConnector org.springframework.http.client.reactive.JettyResourceFactory java.util.function.Consumer org.eclipse.jetty.client.HttpClient
StackMap stack:
aload 0
aload 3
putfield org.springframework.http.client.reactive.JettyClientHttpConnector.httpClient:Lorg/eclipse/jetty/client/HttpClient;
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/springframework/http/client/reactive/JettyClientHttpConnector;
0 10 1 resourceFactory Lorg/springframework/http/client/reactive/JettyResourceFactory;
0 10 2 customizer Ljava/util/function/Consumer<Lorg/eclipse/jetty/client/HttpClient;>;
3 10 3 httpClient Lorg/eclipse/jetty/client/HttpClient;
Signature: (Lorg/springframework/http/client/reactive/JettyResourceFactory;Ljava/util/function/Consumer<Lorg/eclipse/jetty/client/HttpClient;>;)V
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
resourceFactory
customizer
public void <init>(org.eclipse.jetty.client.HttpClient);
descriptor: (Lorg/eclipse/jetty/client/HttpClient;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.springframework.core.io.buffer.DefaultDataBufferFactory
dup
invokespecial org.springframework.core.io.buffer.DefaultDataBufferFactory.<init>:()V
putfield org.springframework.http.client.reactive.JettyClientHttpConnector.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
2: aload 1
ldc "HttpClient is required"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
3: aload 0
aload 1
putfield org.springframework.http.client.reactive.JettyClientHttpConnector.httpClient:Lorg/eclipse/jetty/client/HttpClient;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/http/client/reactive/JettyClientHttpConnector;
0 5 1 httpClient Lorg/eclipse/jetty/client/HttpClient;
MethodParameters:
Name Flags
httpClient
public void setBufferFactory(org.springframework.core.io.buffer.DataBufferFactory);
descriptor: (Lorg/springframework/core/io/buffer/DataBufferFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.http.client.reactive.JettyClientHttpConnector.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/http/client/reactive/JettyClientHttpConnector;
0 2 1 bufferFactory Lorg/springframework/core/io/buffer/DataBufferFactory;
MethodParameters:
Name Flags
bufferFactory
public reactor.core.publisher.Mono<org.springframework.http.client.reactive.ClientHttpResponse> connect(org.springframework.http.HttpMethod, java.net.URI, java.util.function.Function<? super org.springframework.http.client.reactive.ClientHttpRequest, reactor.core.publisher.Mono<java.lang.Void>>);
descriptor: (Lorg/springframework/http/HttpMethod;Ljava/net/URI;Ljava/util/function/Function;)Lreactor/core/publisher/Mono;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokevirtual java.net.URI.isAbsolute:()Z
ifne 2
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "URI is not absolute: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.http.client.reactive.JettyClientHttpConnector.httpClient:Lorg/eclipse/jetty/client/HttpClient;
invokevirtual org.eclipse.jetty.client.HttpClient.isStarted:()Z
ifne 7
3: aload 0
getfield org.springframework.http.client.reactive.JettyClientHttpConnector.httpClient:Lorg/eclipse/jetty/client/HttpClient;
invokevirtual org.eclipse.jetty.client.HttpClient.start:()V
4: goto 7
5: StackMap locals:
StackMap stack: java.lang.Exception
astore 4
start local 4 6: aload 4
invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
areturn
end local 4 7: StackMap locals:
StackMap stack:
new org.springframework.http.client.reactive.JettyClientHttpRequest
dup
8: aload 0
getfield org.springframework.http.client.reactive.JettyClientHttpConnector.httpClient:Lorg/eclipse/jetty/client/HttpClient;
aload 2
invokevirtual org.eclipse.jetty.client.HttpClient.newRequest:(Ljava/net/URI;)Lorg/eclipse/jetty/client/api/Request;
aload 1
invokevirtual org.springframework.http.HttpMethod.toString:()Ljava/lang/String;
invokeinterface org.eclipse.jetty.client.api.Request.method:(Ljava/lang/String;)Lorg/eclipse/jetty/client/api/Request;
aload 0
getfield org.springframework.http.client.reactive.JettyClientHttpConnector.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
9: invokespecial org.springframework.http.client.reactive.JettyClientHttpRequest.<init>:(Lorg/eclipse/jetty/client/api/Request;Lorg/springframework/core/io/buffer/DataBufferFactory;)V
astore 4
start local 4 10: aload 3
aload 4
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast reactor.core.publisher.Mono
11: aload 4
invokevirtual org.springframework.http.client.reactive.JettyClientHttpRequest.getReactiveRequest:()Lorg/eclipse/jetty/reactive/client/ReactiveRequest;
aload 0
invokedynamic apply(Lorg/springframework/http/client/reactive/JettyClientHttpConnector;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/springframework/http/client/reactive/JettyClientHttpConnector.lambda$0(Lorg/eclipse/jetty/reactive/client/ReactiveResponse;Lorg/reactivestreams/Publisher;)Lorg/reactivestreams/Publisher; (7)
(Lorg/eclipse/jetty/reactive/client/ReactiveResponse;Lorg/reactivestreams/Publisher;)Lorg/reactivestreams/Publisher;
invokevirtual org.eclipse.jetty.reactive.client.ReactiveRequest.response:(Ljava/util/function/BiFunction;)Lorg/reactivestreams/Publisher;
12: invokestatic reactor.core.publisher.Mono.from:(Lorg/reactivestreams/Publisher;)Lreactor/core/publisher/Mono;
invokevirtual reactor.core.publisher.Mono.then:(Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/springframework/http/client/reactive/JettyClientHttpConnector;
0 13 1 method Lorg/springframework/http/HttpMethod;
0 13 2 uri Ljava/net/URI;
0 13 3 requestCallback Ljava/util/function/Function<-Lorg/springframework/http/client/reactive/ClientHttpRequest;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
6 7 4 ex Ljava/lang/Exception;
10 13 4 clientHttpRequest Lorg/springframework/http/client/reactive/JettyClientHttpRequest;
Exception table:
from to target type
3 4 5 Class java.lang.Exception
Signature: (Lorg/springframework/http/HttpMethod;Ljava/net/URI;Ljava/util/function/Function<-Lorg/springframework/http/client/reactive/ClientHttpRequest;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;)Lreactor/core/publisher/Mono<Lorg/springframework/http/client/reactive/ClientHttpResponse;>;
MethodParameters:
Name Flags
method
uri
requestCallback
private org.springframework.core.io.buffer.DataBuffer toDataBuffer(org.eclipse.jetty.reactive.client.ContentChunk);
descriptor: (Lorg/eclipse/jetty/reactive/client/ContentChunk;)Lorg/springframework/core/io/buffer/DataBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.http.client.reactive.JettyClientHttpConnector.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
aload 1
getfield org.eclipse.jetty.reactive.client.ContentChunk.buffer:Ljava/nio/ByteBuffer;
invokevirtual java.nio.ByteBuffer.capacity:()I
invokeinterface org.springframework.core.io.buffer.DataBufferFactory.allocateBuffer:(I)Lorg/springframework/core/io/buffer/DataBuffer;
astore 2
start local 2 1: aload 2
iconst_1
anewarray java.nio.ByteBuffer
dup
iconst_0
aload 1
getfield org.eclipse.jetty.reactive.client.ContentChunk.buffer:Ljava/nio/ByteBuffer;
aastore
invokeinterface org.springframework.core.io.buffer.DataBuffer.write:([Ljava/nio/ByteBuffer;)Lorg/springframework/core/io/buffer/DataBuffer;
pop
2: aload 1
getfield org.eclipse.jetty.reactive.client.ContentChunk.callback:Lorg/eclipse/jetty/util/Callback;
invokeinterface org.eclipse.jetty.util.Callback.succeeded:()V
3: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/http/client/reactive/JettyClientHttpConnector;
0 4 1 chunk Lorg/eclipse/jetty/reactive/client/ContentChunk;
1 4 2 buffer Lorg/springframework/core/io/buffer/DataBuffer;
MethodParameters:
Name Flags
chunk
private org.reactivestreams.Publisher lambda$0(org.eclipse.jetty.reactive.client.ReactiveResponse, org.reactivestreams.Publisher);
descriptor: (Lorg/eclipse/jetty/reactive/client/ReactiveResponse;Lorg/reactivestreams/Publisher;)Lorg/reactivestreams/Publisher;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic reactor.core.publisher.Flux.from:(Lorg/reactivestreams/Publisher;)Lreactor/core/publisher/Flux;
aload 0
invokedynamic apply(Lorg/springframework/http/client/reactive/JettyClientHttpConnector;)Ljava/util/function/Function;
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;
org/springframework/http/client/reactive/JettyClientHttpConnector.toDataBuffer(Lorg/eclipse/jetty/reactive/client/ContentChunk;)Lorg/springframework/core/io/buffer/DataBuffer; (7)
(Lorg/eclipse/jetty/reactive/client/ContentChunk;)Lorg/springframework/core/io/buffer/DataBuffer;
invokevirtual reactor.core.publisher.Flux.map:(Ljava/util/function/Function;)Lreactor/core/publisher/Flux;
astore 3
start local 3 1: new org.springframework.http.client.reactive.JettyClientHttpResponse
dup
aload 1
aload 3
invokespecial org.springframework.http.client.reactive.JettyClientHttpResponse.<init>:(Lorg/eclipse/jetty/reactive/client/ReactiveResponse;Lorg/reactivestreams/Publisher;)V
invokestatic reactor.core.publisher.Mono.just:(Ljava/lang/Object;)Lreactor/core/publisher/Mono;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/http/client/reactive/JettyClientHttpConnector;
0 2 1 response Lorg/eclipse/jetty/reactive/client/ReactiveResponse;
0 2 2 chunks Lorg/reactivestreams/Publisher<Lorg/eclipse/jetty/reactive/client/ContentChunk;>;
1 2 3 content Lreactor/core/publisher/Flux<Lorg/springframework/core/io/buffer/DataBuffer;>;
}
SourceFile: "JettyClientHttpConnector.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles