public class io.vertx.ext.web.client.impl.predicate.PredicateInterceptor implements io.vertx.core.Handler<io.vertx.ext.web.client.impl.HttpContext<?>>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.ext.web.client.impl.predicate.PredicateInterceptor
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/web/client/impl/predicate/PredicateInterceptor;
public void handle(io.vertx.ext.web.client.impl.HttpContext<?>);
descriptor: (Lio/vertx/ext/web/client/impl/HttpContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual io.vertx.ext.web.client.impl.HttpContext.phase:()Lio/vertx/ext/web/client/impl/ClientPhase;
getstatic io.vertx.ext.web.client.impl.ClientPhase.RECEIVE_RESPONSE:Lio/vertx/ext/web/client/impl/ClientPhase;
if_acmpne 22
1: aload 1
invokevirtual io.vertx.ext.web.client.impl.HttpContext.request:()Lio/vertx/ext/web/client/HttpRequest;
checkcast io.vertx.ext.web.client.impl.HttpRequestImpl
astore 2
start local 2 2: aload 1
invokevirtual io.vertx.ext.web.client.impl.HttpContext.clientResponse:()Lio/vertx/core/http/HttpClientResponse;
astore 3
start local 3 3: aload 2
getfield io.vertx.ext.web.client.impl.HttpRequestImpl.expectations:Ljava/util/List;
astore 4
start local 4 4: aload 4
ifnull 22
5: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 21
StackMap locals: io.vertx.ext.web.client.impl.predicate.PredicateInterceptor io.vertx.ext.web.client.impl.HttpContext io.vertx.ext.web.client.impl.HttpRequestImpl io.vertx.core.http.HttpClientResponse java.util.List top java.util.Iterator
StackMap stack:
6: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.ext.web.client.predicate.ResponsePredicate
astore 5
start local 5 7: aload 5
aload 0
aload 3
aload 1
aconst_null
invokevirtual io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.responseCopy:(Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext;Ljava/lang/Object;)Lio/vertx/ext/web/client/impl/HttpResponseImpl;
invokeinterface io.vertx.ext.web.client.predicate.ResponsePredicate.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.vertx.ext.web.client.impl.predicate.ResponsePredicateResultImpl
astore 7
start local 7 8: goto 12
end local 7 StackMap locals: io.vertx.ext.web.client.impl.predicate.PredicateInterceptor io.vertx.ext.web.client.impl.HttpContext io.vertx.ext.web.client.impl.HttpRequestImpl io.vertx.core.http.HttpClientResponse java.util.List io.vertx.ext.web.client.predicate.ResponsePredicate java.util.Iterator
StackMap stack: java.lang.Exception
9: astore 8
start local 8 10: aload 1
aload 8
invokevirtual io.vertx.ext.web.client.impl.HttpContext.fail:(Ljava/lang/Throwable;)Z
pop
11: return
end local 8 start local 7 12: StackMap locals: io.vertx.ext.web.client.impl.predicate.ResponsePredicateResultImpl
StackMap stack:
aload 7
invokevirtual io.vertx.ext.web.client.impl.predicate.ResponsePredicateResultImpl.succeeded:()Z
ifne 21
13: aload 5
invokeinterface io.vertx.ext.web.client.predicate.ResponsePredicate.errorConverter:()Lio/vertx/ext/web/client/predicate/ErrorConverter;
astore 8
start local 8 14: aload 8
invokeinterface io.vertx.ext.web.client.predicate.ErrorConverter.requiresBody:()Z
ifne 18
15: aload 7
aload 0
aload 3
aload 1
aconst_null
invokevirtual io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.responseCopy:(Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext;Ljava/lang/Object;)Lio/vertx/ext/web/client/impl/HttpResponseImpl;
invokevirtual io.vertx.ext.web.client.impl.predicate.ResponsePredicateResultImpl.setHttpResponse:(Lio/vertx/ext/web/client/HttpResponse;)Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;
pop
16: aload 0
aload 1
aload 8
aload 7
invokevirtual io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.failOnPredicate:(Lio/vertx/ext/web/client/impl/HttpContext;Lio/vertx/ext/web/client/predicate/ErrorConverter;Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;)V
17: goto 20
18: StackMap locals: io.vertx.ext.web.client.predicate.ErrorConverter
StackMap stack:
aload 3
aload 0
aload 7
aload 3
aload 1
aload 8
invokedynamic handle(Lio/vertx/ext/web/client/impl/predicate/PredicateInterceptor;Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext;Lio/vertx/ext/web/client/predicate/ErrorConverter;)Lio/vertx/core/Handler;
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;)V
io/vertx/ext/web/client/impl/predicate/PredicateInterceptor.lambda$0(Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext;Lio/vertx/ext/web/client/predicate/ErrorConverter;Lio/vertx/core/buffer/Buffer;)V (7)
(Lio/vertx/core/buffer/Buffer;)V
invokeinterface io.vertx.core.http.HttpClientResponse.bodyHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpClientResponse;
pop
19: aload 3
invokeinterface io.vertx.core.http.HttpClientResponse.resume:()Lio/vertx/core/http/HttpClientResponse;
pop
20: StackMap locals:
StackMap stack:
return
end local 8 end local 7 end local 5 21: StackMap locals: io.vertx.ext.web.client.impl.predicate.PredicateInterceptor io.vertx.ext.web.client.impl.HttpContext io.vertx.ext.web.client.impl.HttpRequestImpl io.vertx.core.http.HttpClientResponse java.util.List top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
end local 4 end local 3 end local 2 22: StackMap locals: io.vertx.ext.web.client.impl.predicate.PredicateInterceptor io.vertx.ext.web.client.impl.HttpContext
StackMap stack:
aload 1
invokevirtual io.vertx.ext.web.client.impl.HttpContext.next:()V
23: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lio/vertx/ext/web/client/impl/predicate/PredicateInterceptor;
0 24 1 httpContext Lio/vertx/ext/web/client/impl/HttpContext<*>;
2 22 2 request Lio/vertx/ext/web/client/impl/HttpRequestImpl;
3 22 3 resp Lio/vertx/core/http/HttpClientResponse;
4 22 4 expectations Ljava/util/List<Lio/vertx/ext/web/client/predicate/ResponsePredicate;>;
7 21 5 expectation Lio/vertx/ext/web/client/predicate/ResponsePredicate;
8 9 7 predicateResult Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;
12 21 7 predicateResult Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;
10 12 8 e Ljava/lang/Exception;
14 21 8 errorConverter Lio/vertx/ext/web/client/predicate/ErrorConverter;
Exception table:
from to target type
7 8 9 Class java.lang.Exception
Signature: (Lio/vertx/ext/web/client/impl/HttpContext<*>;)V
MethodParameters:
Name Flags
httpContext
private <B> io.vertx.ext.web.client.impl.HttpResponseImpl<B> responseCopy(io.vertx.core.http.HttpClientResponse, io.vertx.ext.web.client.impl.HttpContext<?>, B);
descriptor: (Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext;Ljava/lang/Object;)Lio/vertx/ext/web/client/impl/HttpResponseImpl;
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new io.vertx.ext.web.client.impl.HttpResponseImpl
dup
1: aload 1
invokeinterface io.vertx.core.http.HttpClientResponse.version:()Lio/vertx/core/http/HttpVersion;
2: aload 1
invokeinterface io.vertx.core.http.HttpClientResponse.statusCode:()I
3: aload 1
invokeinterface io.vertx.core.http.HttpClientResponse.statusMessage:()Ljava/lang/String;
4: invokestatic io.vertx.core.MultiMap.caseInsensitiveMultiMap:()Lio/vertx/core/MultiMap;
aload 1
invokeinterface io.vertx.core.http.HttpClientResponse.headers:()Lio/vertx/core/MultiMap;
invokeinterface io.vertx.core.MultiMap.addAll:(Lio/vertx/core/MultiMap;)Lio/vertx/core/MultiMap;
5: aconst_null
6: new java.util.ArrayList
dup
aload 1
invokeinterface io.vertx.core.http.HttpClientResponse.cookies:()Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
7: aload 3
8: aload 2
invokevirtual io.vertx.ext.web.client.impl.HttpContext.getRedirectedLocations:()Ljava/util/List;
9: invokespecial io.vertx.ext.web.client.impl.HttpResponseImpl.<init>:(Lio/vertx/core/http/HttpVersion;ILjava/lang/String;Lio/vertx/core/MultiMap;Lio/vertx/core/MultiMap;Ljava/util/List;Ljava/lang/Object;Ljava/util/List;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/vertx/ext/web/client/impl/predicate/PredicateInterceptor;
0 10 1 resp Lio/vertx/core/http/HttpClientResponse;
0 10 2 httpContext Lio/vertx/ext/web/client/impl/HttpContext<*>;
0 10 3 value TB;
Signature: <B:Ljava/lang/Object;>(Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext<*>;TB;)Lio/vertx/ext/web/client/impl/HttpResponseImpl<TB;>;
MethodParameters:
Name Flags
resp
httpContext
value
private void failOnPredicate(io.vertx.ext.web.client.impl.HttpContext<?>, io.vertx.ext.web.client.predicate.ErrorConverter, io.vertx.ext.web.client.impl.predicate.ResponsePredicateResultImpl);
descriptor: (Lio/vertx/ext/web/client/impl/HttpContext;Lio/vertx/ext/web/client/predicate/ErrorConverter;Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
aload 3
invokeinterface io.vertx.ext.web.client.predicate.ErrorConverter.apply:(Lio/vertx/ext/web/client/predicate/ResponsePredicateResult;)Ljava/lang/Throwable;
astore 4
start local 4 1: goto 4
end local 4 StackMap locals:
StackMap stack: java.lang.Exception
2: astore 5
start local 5 3: aload 5
astore 4
end local 5 start local 4 4: StackMap locals: java.lang.Throwable
StackMap stack:
aload 4
ifnull 7
5: aload 1
aload 4
invokevirtual io.vertx.ext.web.client.impl.HttpContext.fail:(Ljava/lang/Throwable;)Z
pop
6: goto 8
7: StackMap locals:
StackMap stack:
aload 1
new io.vertx.core.impl.NoStackTraceThrowable
dup
ldc "Invalid HTTP response"
invokespecial io.vertx.core.impl.NoStackTraceThrowable.<init>:(Ljava/lang/String;)V
invokevirtual io.vertx.ext.web.client.impl.HttpContext.fail:(Ljava/lang/Throwable;)Z
pop
8: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/ext/web/client/impl/predicate/PredicateInterceptor;
0 9 1 ctx Lio/vertx/ext/web/client/impl/HttpContext<*>;
0 9 2 converter Lio/vertx/ext/web/client/predicate/ErrorConverter;
0 9 3 predicateResult Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;
1 2 4 result Ljava/lang/Throwable;
4 9 4 result Ljava/lang/Throwable;
3 4 5 e Ljava/lang/Exception;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
Signature: (Lio/vertx/ext/web/client/impl/HttpContext<*>;Lio/vertx/ext/web/client/predicate/ErrorConverter;Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;)V
MethodParameters:
Name Flags
ctx
converter
predicateResult
public void handle(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.vertx.ext.web.client.impl.HttpContext
invokevirtual io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.handle:(Lio/vertx/ext/web/client/impl/HttpContext;)V
return
LocalVariableTable:
Start End Slot Name Signature
private void lambda$0(io.vertx.ext.web.client.impl.predicate.ResponsePredicateResultImpl, io.vertx.core.http.HttpClientResponse, io.vertx.ext.web.client.impl.HttpContext, io.vertx.ext.web.client.predicate.ErrorConverter, io.vertx.core.buffer.Buffer);
descriptor: (Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext;Lio/vertx/ext/web/client/predicate/ErrorConverter;Lio/vertx/core/buffer/Buffer;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=6, args_size=6
start local 0 start local 5 0: aload 1
aload 0
aload 2
aload 3
aload 5
invokevirtual io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.responseCopy:(Lio/vertx/core/http/HttpClientResponse;Lio/vertx/ext/web/client/impl/HttpContext;Ljava/lang/Object;)Lio/vertx/ext/web/client/impl/HttpResponseImpl;
invokevirtual io.vertx.ext.web.client.impl.predicate.ResponsePredicateResultImpl.setHttpResponse:(Lio/vertx/ext/web/client/HttpResponse;)Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;
pop
1: aload 0
aload 3
aload 4
aload 1
invokevirtual io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.failOnPredicate:(Lio/vertx/ext/web/client/impl/HttpContext;Lio/vertx/ext/web/client/predicate/ErrorConverter;Lio/vertx/ext/web/client/impl/predicate/ResponsePredicateResultImpl;)V
2: return
end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/ext/web/client/impl/predicate/PredicateInterceptor;
0 3 5 buffer Lio/vertx/core/buffer/Buffer;
}
Signature: Ljava/lang/Object;Lio/vertx/core/Handler<Lio/vertx/ext/web/client/impl/HttpContext<*>;>;
SourceFile: "PredicateInterceptor.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles