io.vertx.reactivex.ext.web.handler

## Class ChainAuthHandler

- java.lang.Object
- - io.vertx.reactivex.ext.web.handler.ChainAuthHandler

- All Implemented Interfaces:
    Handler<RoutingContext>, AuthHandler

      public class ChainAuthHandler
      extends Object
      implements AuthHandler, Handler<RoutingContext>

  An auth handler that chains to a sequence of handlers.

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

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static io.vertx.lang.rx.TypeArg<ChainAuthHandler>` | `__TYPE_ARG`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ChainAuthHandler(ChainAuthHandler delegate)`
    `ChainAuthHandler(Object delegate)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `AuthHandler` | `addAuthorities(Set<String> authorities)` Add a set of required authorities for this auth handler
    `AuthHandler` | `addAuthority(String authority)` Add a required authority for this auth handler
    `ChainAuthHandler` | `append(AuthHandler authHandler)` Appends a auth provider to the chain.
    `void` | `authorize(User user, Handler<AsyncResult<Void>> handler)` Authorizes the given user against all added authorities.
    `void` | `clear()` Clears the chain.
    `static ChainAuthHandler` | `create()`
    `boolean` | `equals(Object o)`
    `ChainAuthHandler` | `getDelegate()`
    `void` | `handle(RoutingContext event)` Something has happened, so handle it.
    `int` | `hashCode()`
    `static ChainAuthHandler` | `newInstance(ChainAuthHandler arg)`
    `void` | `parseCredentials(RoutingContext context, Handler<AsyncResult<JsonObject>> handler)` Parses the credentials from the request into a JsonObject.
    `boolean` | `remove(AuthHandler authHandler)` Removes a provider from the chain.
    `Completable` | `rxAuthorize(User user)` Authorizes the given user against all added authorities.
    `Single<JsonObject>` | `rxParseCredentials(RoutingContext context)` Parses the credentials from the request into a JsonObject.
    `String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface io.vertx.reactivex.ext.web.handler.AuthHandler

      `newInstance`

- - ### Field Detail

    - #### __TYPE_ARG

          public static final io.vertx.lang.rx.TypeArg<ChainAuthHandler> __TYPE_ARG

  - ### Constructor Detail

    - #### ChainAuthHandler

          public ChainAuthHandler(ChainAuthHandler delegate)

    - #### ChainAuthHandler

          public ChainAuthHandler(Object delegate)

  - ### Method Detail

    - #### 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 ChainAuthHandler getDelegate()

      Specified by:
        `getDelegate` in interface `AuthHandler`

    - #### handle

          public void handle(RoutingContext event)

      Something has happened, so handle it.
      Specified by:
        `handle` in interface `Handler<RoutingContext>`
      Specified by:
        `handle` in interface `AuthHandler`
      Parameters:
        `event` - the event to handle

    - #### addAuthority

          public AuthHandler addAuthority(String authority)

      Add a required authority for this auth handler
      Specified by:
        `addAuthority` in interface `AuthHandler`
      Parameters:
        `authority` - the authority
      Returns:
        a reference to this, so the API can be used fluently

    - #### addAuthorities

          public AuthHandler addAuthorities(Set<String> authorities)

      Add a set of required authorities for this auth handler
      Specified by:
        `addAuthorities` in interface `AuthHandler`
      Parameters:
        `authorities` - the set of authorities
      Returns:
        a reference to this, so the API can be used fluently

    - #### parseCredentials

          public void parseCredentials(RoutingContext context,
                                       Handler<AsyncResult<JsonObject>> handler)

      Parses the credentials from the request into a JsonObject. The implementation should be able to extract the required info for the auth provider in the format the provider expects.
      Specified by:
        `parseCredentials` in interface `AuthHandler`
      Parameters:
        `context` - the routing context
        `handler` - the handler to be called once the information is available.

    - #### rxParseCredentials

          public Single<JsonObject> rxParseCredentials(RoutingContext context)

      Parses the credentials from the request into a JsonObject. The implementation should be able to extract the required info for the auth provider in the format the provider expects.
      Parameters:
        `context` - the routing context
      Returns:

    - #### authorize

          public void authorize(User user,
                                Handler<AsyncResult<Void>> handler)

      Authorizes the given user against all added authorities.
      Specified by:
        `authorize` in interface `AuthHandler`
      Parameters:
        `user` - a user.
        `handler` - the handler for the result.

    - #### rxAuthorize

          public Completable rxAuthorize(User user)

      Authorizes the given user against all added authorities.
      Parameters:
        `user` - a user.
      Returns:

    - #### create

          public static ChainAuthHandler create()

    - #### append

          public ChainAuthHandler append(AuthHandler authHandler)

      Appends a auth provider to the chain.
      Parameters:
        `authHandler` - auth handler
      Returns:
        self

    - #### remove

          public boolean remove(AuthHandler authHandler)

      Removes a provider from the chain.
      Parameters:
        `authHandler` - provider to remove
      Returns:
        true if provider was removed, false if non existent in the chain.

    - #### clear

          public void clear()

      Clears the chain.

    - #### newInstance

          public static ChainAuthHandler newInstance(ChainAuthHandler arg)

Copyright © 2020 Eclipse. All rights reserved.