Class APIKeyHandler

java.lang.Object
io.vertx.reactivex.ext.web.handler.APIKeyHandler
All Implemented Interfaces:
Handler<RoutingContext>, io.vertx.lang.rx.RxDelegate, AuthenticationHandler

public class APIKeyHandler extends Object implements io.vertx.lang.rx.RxDelegate, AuthenticationHandler, Handler<RoutingContext>
An authentication handler that provides API Key support. API keys can be extracted from HTTP headers/query parameters/cookies. By default this handler will extract the API key from an HTTP header named X-API-KEY.

NOTE: This class has been automatically generated from the original non RX-ified interface using Vert.x codegen.

  • Field Details

    • __TYPE_ARG

      public static final io.vertx.lang.rx.TypeArg<APIKeyHandler> __TYPE_ARG
  • Constructor Details

    • APIKeyHandler

      public APIKeyHandler(APIKeyHandler delegate)
    • APIKeyHandler

      public APIKeyHandler(Object delegate)
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • getDelegate

      public APIKeyHandler getDelegate()
      Specified by:
      getDelegate in interface AuthenticationHandler
      Specified by:
      getDelegate in interface io.vertx.lang.rx.RxDelegate
    • handle

      public void handle(RoutingContext event)
      Something has happened, so handle it.
      Specified by:
      handle in interface AuthenticationHandler
      Specified by:
      handle in interface Handler<RoutingContext>
      Parameters:
      event - the event to handle
    • create

      public static APIKeyHandler create(AuthenticationProvider authProvider)
      Create an API Key authentication handler
      Parameters:
      authProvider - the auth provider to use
      Returns:
      the auth handler
    • header

      public APIKeyHandler header(String headerName)
      Specify the source for the api key extraction as an HTTP header with the given name.
      Parameters:
      headerName - the header name containing the API key
      Returns:
      fluent self
    • parameter

      public APIKeyHandler parameter(String paramName)
      Specify the source for the api key extraction as an HTTP query parameter with the given name.
      Parameters:
      paramName - the parameter name containing the API key
      Returns:
      fluent self
    • cookie

      public APIKeyHandler cookie(String cookieName)
      Specify the source for the api key extraction as an HTTP cookie with the given name.
      Parameters:
      cookieName - the cookie name containing the API key
      Returns:
      fluent self
    • tokenExtractor

      public APIKeyHandler tokenExtractor(Function<String, Future<String>> tokenExtractor)
      Transform from user's token format to the AuthenticationHandler's format.
      Parameters:
      tokenExtractor - extract the token from the origin payload
      Returns:
      fluent self
    • tokenExtractor

      public APIKeyHandler tokenExtractor(Function<String, Single<String>> tokenExtractor)
      Transform from user's token format to the AuthenticationHandler's format.
      Parameters:
      tokenExtractor - extract the token from the origin payload
      Returns:
      fluent self
    • newInstance

      public static APIKeyHandler newInstance(APIKeyHandler arg)