io.vertx.reactivex.ext.auth

## Class User

- java.lang.Object
- - io.vertx.reactivex.ext.auth.User

- Direct Known Subclasses:
    AccessToken

      public class User
      extends Object

  Represents an authenticates User and contains operations to authorise the user.

  Please consult the documentation for a detailed explanation.

  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<User>` | `__TYPE_ARG`

  - ### Constructor Summary

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

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `JsonObject` | `attributes()` Gets extra attributes of the user.
    `Authorizations` | `authorizations()` Returns user's authorizations that have been previously loaded by the providers.
    `User` | `clearCache()` Deprecated.
    `static User` | `create(JsonObject principal)`
    `static User` | `create(JsonObject principal, JsonObject attributes)`
    `boolean` | `equals(Object o)`
    `boolean` | `expired()` Flags this user object to be expired.
    `boolean` | `expired(int leeway)` Flags this user object to be expired.
    `User` | `getDelegate()`
    `int` | `hashCode()`
    `User` | `isAuthorized(Authorization authority)` Deprecated.
    `User` | `isAuthorized(Authorization authority, Handler<AsyncResult<Boolean>> resultHandler)` Deprecated.
    `User` | `isAuthorized(String authority)` Deprecated.
    `User` | `isAuthorized(String authority, Handler<AsyncResult<Boolean>> resultHandler)` Deprecated.
    `static User` | `newInstance(User arg)`
    `JsonObject` | `principal()` Get the underlying principal for the User.
    `Single<Boolean>` | `rxIsAuthorized(Authorization authority)` Deprecated.
    `Single<Boolean>` | `rxIsAuthorized(String authority)` Deprecated.
    `void` | `setAuthProvider(AuthProvider authProvider)` Deprecated.
    `String` | `toString()`

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

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

- - ### Field Detail

    - #### __TYPE_ARG

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

  - ### Constructor Detail

    - #### User

          public User(User delegate)

    - #### User

          public User(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 User getDelegate()

    - #### create

          public static User create(JsonObject principal)

    - #### create

          public static User create(JsonObject principal,
                                    JsonObject attributes)

    - #### attributes

          public JsonObject attributes()

      Gets extra attributes of the user. Attributes contains any attributes related to the outcome of authenticating a user (e.g.: issued date, metadata, etc...)
      Returns:
        a json object with any relevant attribute.

    - #### expired

          public boolean expired()

      Flags this user object to be expired. A User is considered expired if it contains an expiration time and the current clock time is post the expiration date.
      Returns:
        `true` if expired

    - #### expired

          public boolean expired(int leeway)

      Flags this user object to be expired. Expiration takes 3 values in account:
      1. `exp` "expiration" timestamp in seconds.
      2. `iat` "issued at" in seconds.
      3. `nbf` "not before" in seconds.
      A User is considered expired if it contains any of the above and the current clock time does not agree with the parameter value. If the `principal()` do not contain a key then `attributes()` are checked.

      If all of the properties are not available the user will not expire.

      Implementations of this interface might relax this rule to account for a leeway to safeguard against clock drifting.

      Parameters:
        `leeway` - a greater than zero leeway value.
      Returns:
        `true` if expired

    - #### authorizations

          public Authorizations authorizations()

      Returns user's authorizations that have been previously loaded by the providers.
      Returns:
        authorizations holder for the user.

    - #### isAuthorized

          @Deprecated
          public User isAuthorized(Authorization authority,
                                               Handler<AsyncResult<Boolean>> resultHandler)

      Deprecated.
      Is the user authorised to
      Parameters:
        `authority` - the authority - what this really means is determined by the specific implementation. It might represent a permission to access a resource e.g. `printers:printer34` or it might represent authority to a role in a roles based model, e.g. `role:admin`.
        `resultHandler` - handler that will be called with an `AsyncResult` containing the value `true` if the they has the authority or `false` otherwise.
      Returns:
        the User to enable fluent use

    - #### isAuthorized

          @Deprecated
          public User isAuthorized(Authorization authority)

      Deprecated.
      Is the user authorised to
      Parameters:
        `authority` - the authority - what this really means is determined by the specific implementation. It might represent a permission to access a resource e.g. `printers:printer34` or it might represent authority to a role in a roles based model, e.g. `role:admin`.
      Returns:
        the User to enable fluent use

    - #### rxIsAuthorized

          @Deprecated
          public Single<Boolean> rxIsAuthorized(Authorization authority)

      Deprecated.
      Is the user authorised to
      Parameters:
        `authority` - the authority - what this really means is determined by the specific implementation. It might represent a permission to access a resource e.g. `printers:printer34` or it might represent authority to a role in a roles based model, e.g. `role:admin`.
      Returns:
        the User to enable fluent use

    - #### isAuthorized

          @Deprecated
          public User isAuthorized(String authority,
                                               Handler<AsyncResult<Boolean>> resultHandler)

      Deprecated.
      Is the user authorised to
      Parameters:
        `authority` - the authority - what this really means is determined by the specific implementation. It might represent a permission to access a resource e.g. `printers:printer34` or it might represent authority to a role in a roles based model, e.g. `role:admin`.
        `resultHandler` - handler that will be called with an `AsyncResult` containing the value `true` if the they has the authority or `false` otherwise.
      Returns:
        the User to enable fluent use

    - #### isAuthorized

          @Deprecated
          public User isAuthorized(String authority)

      Deprecated.
      Is the user authorised to
      Parameters:
        `authority` - the authority - what this really means is determined by the specific implementation. It might represent a permission to access a resource e.g. `printers:printer34` or it might represent authority to a role in a roles based model, e.g. `role:admin`.
      Returns:
        the User to enable fluent use

    - #### rxIsAuthorized

          @Deprecated
          public Single<Boolean> rxIsAuthorized(String authority)

      Deprecated.
      Is the user authorised to
      Parameters:
        `authority` - the authority - what this really means is determined by the specific implementation. It might represent a permission to access a resource e.g. `printers:printer34` or it might represent authority to a role in a roles based model, e.g. `role:admin`.
      Returns:
        the User to enable fluent use

    - #### clearCache

          @Deprecated
          public User clearCache()

      Deprecated.
      The User object will cache any authorities that it knows it has to avoid hitting the underlying auth provider each time. Use this method if you want to clear this cache.
      Returns:
        the User to enable fluent use

    - #### principal

          public JsonObject principal()

      Get the underlying principal for the User. What this actually returns depends on the implementation. For a simple user/password based auth, it's likely to contain a JSON object with the following structure:

             {
               "username", "tim"
             }

      Returns:
        JSON representation of the Principal

    - #### setAuthProvider

          @Deprecated
          public void setAuthProvider(AuthProvider authProvider)

      Deprecated.
      Set the auth provider for the User. This is typically used to reattach a detached User with an AuthProvider, e.g. after it has been deserialized.
      Parameters:
        `authProvider` - the AuthProvider - this must be the same type of AuthProvider that originally created the User

    - #### newInstance

          public static User newInstance(User arg)

Copyright © 2020 Eclipse. All rights reserved.