public class io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler implements io.vertx.core.Handler<io.vertx.ext.web.RoutingContext>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler
super_class: java.lang.Object
{
io.vertx.core.eventbus.EventBus eventBus;
descriptor: Lio/vertx/core/eventbus/EventBus;
flags: (0x0000)
java.lang.String address;
descriptor: Ljava/lang/String;
flags: (0x0000)
io.vertx.core.eventbus.DeliveryOptions deliveryOptions;
descriptor: Lio/vertx/core/eventbus/DeliveryOptions;
flags: (0x0000)
java.util.function.Function<io.vertx.ext.web.RoutingContext, io.vertx.core.json.JsonObject> extraOperationContextPayloadMapper;
descriptor: Ljava/util/function/Function;
flags: (0x0000)
Signature: Ljava/util/function/Function<Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/json/JsonObject;>;
public void <init>(io.vertx.core.eventbus.EventBus, java.lang.String, io.vertx.core.eventbus.DeliveryOptions, java.util.function.Function<io.vertx.ext.web.RoutingContext, io.vertx.core.json.JsonObject>);
descriptor: (Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Lio/vertx/core/eventbus/DeliveryOptions;Ljava/util/function/Function;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.eventBus:Lio/vertx/core/eventbus/EventBus;
2: aload 0
aload 2
putfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.address:Ljava/lang/String;
3: aload 0
aload 3
putfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.deliveryOptions:Lio/vertx/core/eventbus/DeliveryOptions;
4: aload 0
aload 4
putfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.extraOperationContextPayloadMapper:Ljava/util/function/Function;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/ext/web/api/contract/impl/RouteToEBServiceHandler;
0 6 1 eventBus Lio/vertx/core/eventbus/EventBus;
0 6 2 address Ljava/lang/String;
0 6 3 deliveryOptions Lio/vertx/core/eventbus/DeliveryOptions;
0 6 4 extraOperationContextPayloadMapper Ljava/util/function/Function<Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/json/JsonObject;>;
Signature: (Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Lio/vertx/core/eventbus/DeliveryOptions;Ljava/util/function/Function<Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/json/JsonObject;>;)V
MethodParameters:
Name Flags
eventBus
address
deliveryOptions
extraOperationContextPayloadMapper
public void handle(io.vertx.ext.web.RoutingContext);
descriptor: (Lio/vertx/ext/web/RoutingContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.eventBus:Lio/vertx/core/eventbus/EventBus;
aload 0
getfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.address:Ljava/lang/String;
aload 0
aload 1
invokevirtual io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.buildPayload:(Lio/vertx/ext/web/RoutingContext;)Lio/vertx/core/json/JsonObject;
aload 0
getfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.deliveryOptions:Lio/vertx/core/eventbus/DeliveryOptions;
aload 1
invokedynamic handle(Lio/vertx/ext/web/RoutingContext;)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/api/contract/impl/RouteToEBServiceHandler.lambda$0(Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
invokeinterface io.vertx.core.eventbus.EventBus.request:(Ljava/lang/String;Ljava/lang/Object;Lio/vertx/core/eventbus/DeliveryOptions;Lio/vertx/core/Handler;)Lio/vertx/core/eventbus/EventBus;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/ext/web/api/contract/impl/RouteToEBServiceHandler;
0 2 1 routingContext Lio/vertx/ext/web/RoutingContext;
MethodParameters:
Name Flags
routingContext
private io.vertx.core.json.JsonObject buildPayload(io.vertx.ext.web.RoutingContext);
descriptor: (Lio/vertx/ext/web/RoutingContext;)Lio/vertx/core/json/JsonObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=2, args_size=2
start local 0 start local 1 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
ldc "context"
1: new io.vertx.ext.web.api.OperationRequest
dup
2: aload 1
ldc "parsedParameters"
invokeinterface io.vertx.ext.web.RoutingContext.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast io.vertx.ext.web.api.RequestParameters
invokeinterface io.vertx.ext.web.api.RequestParameters.toJson:()Lio/vertx/core/json/JsonObject;
3: aload 1
invokeinterface io.vertx.ext.web.RoutingContext.request:()Lio/vertx/core/http/HttpServerRequest;
invokeinterface io.vertx.core.http.HttpServerRequest.headers:()Lio/vertx/core/MultiMap;
4: aload 1
invokeinterface io.vertx.ext.web.RoutingContext.user:()Lio/vertx/ext/auth/User;
ifnull 5
aload 1
invokeinterface io.vertx.ext.web.RoutingContext.user:()Lio/vertx/ext/auth/User;
invokeinterface io.vertx.ext.auth.User.principal:()Lio/vertx/core/json/JsonObject;
goto 6
StackMap locals: io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler io.vertx.ext.web.RoutingContext
StackMap stack: io.vertx.core.json.JsonObject java.lang.String new 1 new 1 io.vertx.core.json.JsonObject io.vertx.core.MultiMap
5: aconst_null
6: StackMap locals: io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler io.vertx.ext.web.RoutingContext
StackMap stack: io.vertx.core.json.JsonObject java.lang.String new 1 new 1 io.vertx.core.json.JsonObject io.vertx.core.MultiMap io.vertx.core.json.JsonObject
aload 0
getfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.extraOperationContextPayloadMapper:Ljava/util/function/Function;
ifnull 7
aload 0
getfield io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.extraOperationContextPayloadMapper:Ljava/util/function/Function;
aload 1
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.vertx.core.json.JsonObject
goto 8
StackMap locals: io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler io.vertx.ext.web.RoutingContext
StackMap stack: io.vertx.core.json.JsonObject java.lang.String new 1 new 1 io.vertx.core.json.JsonObject io.vertx.core.MultiMap io.vertx.core.json.JsonObject
7: aconst_null
StackMap locals: io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler io.vertx.ext.web.RoutingContext
StackMap stack: io.vertx.core.json.JsonObject java.lang.String new 1 new 1 io.vertx.core.json.JsonObject io.vertx.core.MultiMap io.vertx.core.json.JsonObject io.vertx.core.json.JsonObject
8: invokespecial io.vertx.ext.web.api.OperationRequest.<init>:(Lio/vertx/core/json/JsonObject;Lio/vertx/core/MultiMap;Lio/vertx/core/json/JsonObject;Lio/vertx/core/json/JsonObject;)V
9: invokevirtual io.vertx.ext.web.api.OperationRequest.toJson:()Lio/vertx/core/json/JsonObject;
10: invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/ext/web/api/contract/impl/RouteToEBServiceHandler;
0 11 1 context Lio/vertx/ext/web/RoutingContext;
MethodParameters:
Name Flags
context
public static io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler build(io.vertx.core.eventbus.EventBus, java.lang.String, java.lang.String, java.util.function.Function<io.vertx.ext.web.RoutingContext, io.vertx.core.json.JsonObject>);
descriptor: (Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Lio/vertx/ext/web/api/contract/impl/RouteToEBServiceHandler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler
dup
aload 0
aload 1
new io.vertx.core.eventbus.DeliveryOptions
dup
invokespecial io.vertx.core.eventbus.DeliveryOptions.<init>:()V
ldc "action"
aload 2
invokevirtual io.vertx.core.eventbus.DeliveryOptions.addHeader:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/eventbus/DeliveryOptions;
aload 3
invokespecial io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.<init>:(Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Lio/vertx/core/eventbus/DeliveryOptions;Ljava/util/function/Function;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 eventBus Lio/vertx/core/eventbus/EventBus;
0 1 1 address Ljava/lang/String;
0 1 2 actionName Ljava/lang/String;
0 1 3 extraOperationContextPayloadMapper Ljava/util/function/Function<Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/json/JsonObject;>;
Signature: (Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function<Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/json/JsonObject;>;)Lio/vertx/ext/web/api/contract/impl/RouteToEBServiceHandler;
MethodParameters:
Name Flags
eventBus
address
actionName
extraOperationContextPayloadMapper
public static io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler build(io.vertx.core.eventbus.EventBus, java.lang.String, java.lang.String, io.vertx.core.json.JsonObject, java.util.function.Function<io.vertx.ext.web.RoutingContext, io.vertx.core.json.JsonObject>);
descriptor: (Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Ljava/util/function/Function;)Lio/vertx/ext/web/api/contract/impl/RouteToEBServiceHandler;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new io.vertx.core.eventbus.DeliveryOptions
dup
aload 3
invokespecial io.vertx.core.eventbus.DeliveryOptions.<init>:(Lio/vertx/core/json/JsonObject;)V
ldc "action"
aload 2
invokevirtual io.vertx.core.eventbus.DeliveryOptions.addHeader:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/eventbus/DeliveryOptions;
astore 5
start local 5 1: new io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler
dup
aload 0
aload 1
aload 5
aload 4
invokespecial io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.<init>:(Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Lio/vertx/core/eventbus/DeliveryOptions;Ljava/util/function/Function;)V
areturn
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 2 0 eventBus Lio/vertx/core/eventbus/EventBus;
0 2 1 address Ljava/lang/String;
0 2 2 actionName Ljava/lang/String;
0 2 3 deliveryOptions Lio/vertx/core/json/JsonObject;
0 2 4 extraOperationContextPayloadMapper Ljava/util/function/Function<Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/json/JsonObject;>;
1 2 5 opt Lio/vertx/core/eventbus/DeliveryOptions;
Signature: (Lio/vertx/core/eventbus/EventBus;Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Ljava/util/function/Function<Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/json/JsonObject;>;)Lio/vertx/ext/web/api/contract/impl/RouteToEBServiceHandler;
MethodParameters:
Name Flags
eventBus
address
actionName
deliveryOptions
extraOperationContextPayloadMapper
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.RoutingContext
invokevirtual io.vertx.ext.web.api.contract.impl.RouteToEBServiceHandler.handle:(Lio/vertx/ext/web/RoutingContext;)V
return
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$0(io.vertx.ext.web.RoutingContext, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/ext/web/RoutingContext;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=4, args_size=2
start local 1 0: aload 1
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 11
1: new io.vertx.ext.web.api.OperationResponse
dup
aload 1
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.core.eventbus.Message
invokeinterface io.vertx.core.eventbus.Message.body:()Ljava/lang/Object;
checkcast io.vertx.core.json.JsonObject
invokespecial io.vertx.ext.web.api.OperationResponse.<init>:(Lio/vertx/core/json/JsonObject;)V
astore 2
start local 2 2: aload 0
invokeinterface io.vertx.ext.web.RoutingContext.response:()Lio/vertx/core/http/HttpServerResponse;
aload 2
invokevirtual io.vertx.ext.web.api.OperationResponse.getStatusCode:()Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
invokeinterface io.vertx.core.http.HttpServerResponse.setStatusCode:(I)Lio/vertx/core/http/HttpServerResponse;
astore 3
start local 3 3: aload 2
invokevirtual io.vertx.ext.web.api.OperationResponse.getStatusMessage:()Ljava/lang/String;
ifnull 5
4: aload 3
aload 2
invokevirtual io.vertx.ext.web.api.OperationResponse.getStatusMessage:()Ljava/lang/String;
invokeinterface io.vertx.core.http.HttpServerResponse.setStatusMessage:(Ljava/lang/String;)Lio/vertx/core/http/HttpServerResponse;
pop
5: StackMap locals: io.vertx.ext.web.api.OperationResponse io.vertx.core.http.HttpServerResponse
StackMap stack:
aload 2
invokevirtual io.vertx.ext.web.api.OperationResponse.getHeaders:()Lio/vertx/core/MultiMap;
ifnull 7
6: aload 2
invokevirtual io.vertx.ext.web.api.OperationResponse.getHeaders:()Lio/vertx/core/MultiMap;
aload 3
invokedynamic accept(Lio/vertx/core/http/HttpServerResponse;)Ljava/util/function/Consumer;
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/api/contract/impl/RouteToEBServiceHandler.lambda$1(Lio/vertx/core/http/HttpServerResponse;Ljava/util/Map$Entry;)V (6)
(Ljava/util/Map$Entry;)V
invokeinterface io.vertx.core.MultiMap.forEach:(Ljava/util/function/Consumer;)V
7: StackMap locals:
StackMap stack:
aload 2
invokevirtual io.vertx.ext.web.api.OperationResponse.getPayload:()Lio/vertx/core/buffer/Buffer;
ifnull 9
8: aload 3
aload 2
invokevirtual io.vertx.ext.web.api.OperationResponse.getPayload:()Lio/vertx/core/buffer/Buffer;
invokeinterface io.vertx.core.http.HttpServerResponse.end:(Lio/vertx/core/buffer/Buffer;)Lio/vertx/core/Future;
pop
goto 12
9: StackMap locals:
StackMap stack:
aload 3
invokeinterface io.vertx.core.http.HttpServerResponse.end:()Lio/vertx/core/Future;
pop
end local 3 end local 2 10: goto 12
11: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.ext.web.RoutingContext.fail:(Ljava/lang/Throwable;)V
12: StackMap locals:
StackMap stack:
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 13 1 res Lio/vertx/core/AsyncResult<Lio/vertx/core/eventbus/Message<Lio/vertx/core/json/JsonObject;>;>;
2 10 2 op Lio/vertx/ext/web/api/OperationResponse;
3 10 3 response Lio/vertx/core/http/HttpServerResponse;
private static void lambda$1(io.vertx.core.http.HttpServerResponse, java.util.Map$Entry);
descriptor: (Lio/vertx/core/http/HttpServerResponse;Ljava/util/Map$Entry;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 1
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokeinterface io.vertx.core.http.HttpServerResponse.putHeader:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/http/HttpServerResponse;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 h Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
}
Signature: Ljava/lang/Object;Lio/vertx/core/Handler<Lio/vertx/ext/web/RoutingContext;>;
SourceFile: "RouteToEBServiceHandler.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map