Package io.vertx.rxjava3.ext.auth.authorization

## Interface Authorization

- All Superinterfaces:
    `io.vertx.lang.rx.RxDelegate`
  All Known Implementing Classes:
    `AndAuthorization`, `NotAuthorization`, `OrAuthorization`, `PermissionBasedAuthorization`, `RoleBasedAuthorization`, `WildcardPermissionBasedAuthorization`

      public interface Authorization
      extends io.vertx.lang.rx.RxDelegate

  Interface representing any kind of authorization such as:
  - Role based authorization
  - Permission based authorization
  - Logical authorization (AND, OR, NOT)
  - Time based authorization (ie: allow access the last 5 days of the month, from 8am till 10am, etc.)
  - Context based authorization (ie: allow access if the ip address is 'xxx.xxx.xxx.xxx')
  - Custom based authorization (ie: based on a script or hard-coded code specific to an application)
  - etc.
  The following implementations are provided out of the box:
  - `AndAuthorization`
  - `NotAuthorization`
  - `OrAuthorization`
  - `PermissionBasedAuthorization`
  - `RoleBasedAuthorization`
  - `WildcardPermissionBasedAuthorization`

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

- - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Authorization` | `getDelegate()` |
    `boolean` | `match​(AuthorizationContext context)` | this methods verifies whether or not the authorization match the specified context.
    `static Authorization` | `newInstance​(Authorization arg)` |
    `JsonObject` | `toJson()` |
    `boolean` | `verify​(Authorization authorization)` | this method verifies whether or not the authorization implies the specified authorization.

- - ### Method Detail

    - #### getDelegate

          Authorization getDelegate()

      Specified by:
        `getDelegate` in interface `io.vertx.lang.rx.RxDelegate`

    - #### match

          boolean match​(AuthorizationContext context)

      this methods verifies whether or not the authorization match the specified context.
      Parameters:
        `context` - the context.
      Returns:
        true if there's a match.

    - #### verify

          boolean verify​(Authorization authorization)

      this method verifies whether or not the authorization implies the specified authorization. Note that it doesn't always mean an exact match. For instance, in the case of a `WildcardPermissionBasedAuthorization`, this method may return true even if the permissions are different WildcardPermissionBasedAuthorization.create('*').verify(WildcardPermissionBasedAuthorization.create('anypermission')) would return true
      Parameters:
        `authorization` - the authorization.
      Returns:
        true if implies the argument.

    - #### toJson

          JsonObject toJson()

    - #### newInstance

          static Authorization newInstance​(Authorization arg)