public interface io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory extends io.vertx.ext.web.api.contract.RouterFactory<io.swagger.v3.oas.models.OpenAPI>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory
  super_class: java.lang.Object
{
  public abstract io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory addSecuritySchemaScopeValidator(java.lang.String, java.lang.String, io.vertx.core.Handler<io.vertx.ext.web.RoutingContext>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/ext/web/RoutingContext;>;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
                    Name  Flags
      securitySchemaName  
      scopeName           
      handler             

  public abstract io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory addHandlerByOperationId(java.lang.String, io.vertx.core.Handler<io.vertx.ext.web.RoutingContext>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/ext/web/RoutingContext;>;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
             Name  Flags
      operationId  
      handler      

  public abstract io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory addFailureHandlerByOperationId(java.lang.String, io.vertx.core.Handler<io.vertx.ext.web.RoutingContext>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/ext/web/RoutingContext;>;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
                Name  Flags
      operationId     
      failureHandler  

  public abstract io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory mountOperationToEventBus(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
             Name  Flags
      operationId  
      address      

  public abstract io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory mountServiceFromTag(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
         Name  Flags
      tag      
      address  

  public abstract io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory mountServicesFromExtensions();
    descriptor: ()Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()

  public abstract io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory mountServiceInterface(java.lang.Class, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
      io.vertx.codegen.annotations.GenIgnore()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        io.vertx.codegen.annotations.GenIgnore()
    MethodParameters:
                Name  Flags
      interfaceClass  
      address         

  public static void create(io.vertx.core.Vertx, java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory>>);
    descriptor: (Lio/vertx/core/Vertx;Ljava/lang/String;Lio/vertx/core/Handler;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // java.lang.String url
        start local 2 // io.vertx.core.Handler handler
         0: .line 145
            aload 0 /* vertx */
            aload 1 /* url */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            aload 2 /* handler */
            invokestatic io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory.create:(Lio/vertx/core/Vertx;Ljava/lang/String;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 146
            return
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String url
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0    vertx  Lio/vertx/core/Vertx;
            0    2     1      url  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;>;>;
    Signature: (Lio/vertx/core/Vertx;Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;>;>;)V
    MethodParameters:
         Name  Flags
      vertx    
      url      
      handler  

  public static void create(io.vertx.core.Vertx, java.lang.String, java.util.List<io.vertx.core.json.JsonObject>, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.ext.web.api.contract.openapi3.OpenAPI3RouterFactory>>);
    descriptor: (Lio/vertx/core/Vertx;Ljava/lang/String;Ljava/util/List;Lio/vertx/core/Handler;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // java.lang.String url
        start local 2 // java.util.List auth
        start local 3 // io.vertx.core.Handler handler
         0: .line 161
            aload 2 /* auth */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         1: .line 162
            invokedynamic apply()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;
                  io/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory.lambda$0(Lio/vertx/core/json/JsonObject;)Lio/swagger/v3/parser/core/models/AuthorizationValue; (6 itf)
                  (Lio/vertx/core/json/JsonObject;)Lio/swagger/v3/parser/core/models/AuthorizationValue;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         2: .line 163
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         3: .line 161
            astore 4 /* authorizationValues */
        start local 4 // java.util.List authorizationValues
         4: .line 164
            aload 0 /* vertx */
            aload 1 /* url */
            aload 4 /* authorizationValues */
            aload 0 /* vertx */
            invokedynamic handle(Ljava/lang/String;Ljava/util/List;Lio/vertx/core/Vertx;)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/openapi3/OpenAPI3RouterFactory.lambda$1(Ljava/lang/String;Ljava/util/List;Lio/vertx/core/Vertx;Lio/vertx/core/Promise;)V (6 itf)
                  (Lio/vertx/core/Promise;)V
         5: .line 174
            aload 3 /* handler */
         6: .line 164
            invokeinterface io.vertx.core.Vertx.executeBlocking:(Lio/vertx/core/Handler;Lio/vertx/core/Handler;)V
         7: .line 175
            return
        end local 4 // java.util.List authorizationValues
        end local 3 // io.vertx.core.Handler handler
        end local 2 // java.util.List auth
        end local 1 // java.lang.String url
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    8     0                vertx  Lio/vertx/core/Vertx;
            0    8     1                  url  Ljava/lang/String;
            0    8     2                 auth  Ljava/util/List<Lio/vertx/core/json/JsonObject;>;
            0    8     3              handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;>;>;
            4    8     4  authorizationValues  Ljava/util/List<Lio/swagger/v3/parser/core/models/AuthorizationValue;>;
    Signature: (Lio/vertx/core/Vertx;Ljava/lang/String;Ljava/util/List<Lio/vertx/core/json/JsonObject;>;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;>;>;)V
    MethodParameters:
         Name  Flags
      vertx    
      url      
      auth     
      handler  

  private static io.swagger.v3.parser.core.models.AuthorizationValue lambda$0(io.vertx.core.json.JsonObject);
    descriptor: (Lio/vertx/core/json/JsonObject;)Lio/swagger/v3/parser/core/models/AuthorizationValue;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.core.json.JsonObject obj
         0: .line 162
            aload 0 /* obj */
            ldc Lio/swagger/v3/parser/core/models/AuthorizationValue;
            invokevirtual io.vertx.core.json.JsonObject.mapTo:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast io.swagger.v3.parser.core.models.AuthorizationValue
            areturn
        end local 0 // io.vertx.core.json.JsonObject obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   obj  Lio/vertx/core/json/JsonObject;

  private static void lambda$1(java.lang.String, java.util.List, io.vertx.core.Vertx, io.vertx.core.Promise);
    descriptor: (Ljava/lang/String;Ljava/util/List;Lio/vertx/core/Vertx;Lio/vertx/core/Promise;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=10, locals=5, args_size=4
        start local 3 // io.vertx.core.Promise future
         0: .line 165
            new io.swagger.v3.parser.OpenAPIV3Parser
            dup
            invokespecial io.swagger.v3.parser.OpenAPIV3Parser.<init>:()V
            aload 0
            aload 1
            invokestatic io.vertx.ext.web.api.contract.openapi3.impl.OpenApi3Utils.getParseOptions:()Lio/swagger/v3/parser/core/models/ParseOptions;
            invokevirtual io.swagger.v3.parser.OpenAPIV3Parser.readLocation:(Ljava/lang/String;Ljava/util/List;Lio/swagger/v3/parser/core/models/ParseOptions;)Lio/swagger/v3/parser/core/models/SwaggerParseResult;
            astore 4 /* swaggerParseResult */
        start local 4 // io.swagger.v3.parser.core.models.SwaggerParseResult swaggerParseResult
         1: .line 166
            aload 4 /* swaggerParseResult */
            invokevirtual io.swagger.v3.parser.core.models.SwaggerParseResult.getMessages:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 4
         2: .line 167
            aload 3 /* future */
            new io.vertx.ext.web.api.contract.openapi3.impl.OpenAPI3RouterFactoryImpl
            dup
            aload 2
            aload 4 /* swaggerParseResult */
            invokevirtual io.swagger.v3.parser.core.models.SwaggerParseResult.getOpenAPI:()Lio/swagger/v3/oas/models/OpenAPI;
            new io.swagger.v3.parser.ResolverCache
            dup
            aload 4 /* swaggerParseResult */
            invokevirtual io.swagger.v3.parser.core.models.SwaggerParseResult.getOpenAPI:()Lio/swagger/v3/oas/models/OpenAPI;
            aconst_null
            aload 0
            invokespecial io.swagger.v3.parser.ResolverCache.<init>:(Lio/swagger/v3/oas/models/OpenAPI;Ljava/util/List;Ljava/lang/String;)V
            invokespecial io.vertx.ext.web.api.contract.openapi3.impl.OpenAPI3RouterFactoryImpl.<init>:(Lio/vertx/core/Vertx;Lio/swagger/v3/oas/models/OpenAPI;Lio/swagger/v3/parser/ResolverCache;)V
            invokeinterface io.vertx.core.Promise.complete:(Ljava/lang/Object;)V
         3: .line 168
            goto 7
         4: .line 169
      StackMap locals: io.swagger.v3.parser.core.models.SwaggerParseResult
      StackMap stack:
            aload 4 /* swaggerParseResult */
            invokevirtual io.swagger.v3.parser.core.models.SwaggerParseResult.getMessages:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 6
            aload 4 /* swaggerParseResult */
            invokevirtual io.swagger.v3.parser.core.models.SwaggerParseResult.getMessages:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            new java.lang.StringBuilder
            dup
            ldc "unable to read location `?\\Q"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\\E`?"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.matches:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 170
            aload 3 /* future */
            aload 0
            invokestatic io.vertx.ext.web.api.contract.RouterFactoryException.createSpecNotExistsException:(Ljava/lang/String;)Lio/vertx/ext/web/api/contract/RouterFactoryException;
            invokeinterface io.vertx.core.Promise.fail:(Ljava/lang/Throwable;)V
            goto 7
         6: .line 172
      StackMap locals:
      StackMap stack:
            aload 3 /* future */
            aload 4 /* swaggerParseResult */
            invokevirtual io.swagger.v3.parser.core.models.SwaggerParseResult.getMessages:()Ljava/util/List;
            ldc ", "
            invokestatic org.apache.commons.lang3.StringUtils.join:(Ljava/lang/Iterable;Ljava/lang/String;)Ljava/lang/String;
            invokestatic io.vertx.ext.web.api.contract.RouterFactoryException.createSpecInvalidException:(Ljava/lang/String;)Lio/vertx/ext/web/api/contract/RouterFactoryException;
            invokeinterface io.vertx.core.Promise.fail:(Ljava/lang/Throwable;)V
        end local 4 // io.swagger.v3.parser.core.models.SwaggerParseResult swaggerParseResult
         7: .line 174
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.vertx.core.Promise future
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    8     3              future  Lio/vertx/core/Promise<Lio/vertx/ext/web/api/contract/openapi3/OpenAPI3RouterFactory;>;
            1    7     4  swaggerParseResult  Lio/swagger/v3/parser/core/models/SwaggerParseResult;
}
Signature: Ljava/lang/Object;Lio/vertx/ext/web/api/contract/RouterFactory<Lio/swagger/v3/oas/models/OpenAPI;>;
SourceFile: "OpenAPI3RouterFactory.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.VertxGen()