Class UserContext

java.lang.Object
io.vertx.rxjava3.ext.web.UserContext
All Implemented Interfaces:
io.vertx.lang.rx.RxDelegate

public class UserContext extends Object implements io.vertx.lang.rx.RxDelegate
A web user is extended user coupled to the context and is used to perform verifications and actions on behalf of the user. Actions can be:
  • refresh() - Require a re-authentication to confirm the user is present
  • impersonate() - Require a re-authentication to switch user identities
  • restore() - De-escalate a previous impersonate call
  • logout(String) - Logout the user from this application and redirect to a uri
  • clear() - Same as logout, without requirind a redirect

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<UserContext> __TYPE_ARG
  • Constructor Details

    • UserContext

      public UserContext(UserContext delegate)
    • UserContext

      public UserContext(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 UserContext getDelegate()
      Specified by:
      getDelegate in interface io.vertx.lang.rx.RxDelegate
    • get

      public User get()
      Get the authenticated user (if any). This will usually be injected by an auth handler if authentication if successful.
      Returns:
      the user, or null if the current user is not authenticated.
    • authenticated

      public boolean authenticated()
    • loginHint

      public UserContext loginHint(String loginHint)
      When performing a web identity operation, hint if possible to the identity provider to use the given login.
      Parameters:
      loginHint - the desired login name, for example: admin.
      Returns:
      fluent self
    • refresh

      public Completable refresh()
      Forces the current user to re-authenticate. The user will be redirected to the same origin where this call was made. It is important to notice that the redirect will only allow sources originating from a HTTP GET request.
      Returns:
      future result of the operation.
    • rxRefresh

      public Completable rxRefresh()
      Forces the current user to re-authenticate. The user will be redirected to the same origin where this call was made. It is important to notice that the redirect will only allow sources originating from a HTTP GET request.
      Returns:
      future result of the operation.
    • refresh

      public Completable refresh(String redirectUri)
      Forces the current user to re-authenticate. The user will be redirected to the given uri. It is important to notice that the redirect will only allow targets using an HTTP GET request.
      Parameters:
      redirectUri - the uri to redirect the user to after the re-authentication.
      Returns:
      future result of the operation.
    • rxRefresh

      public Completable rxRefresh(String redirectUri)
      Forces the current user to re-authenticate. The user will be redirected to the given uri. It is important to notice that the redirect will only allow targets using an HTTP GET request.
      Parameters:
      redirectUri - the uri to redirect the user to after the re-authentication.
      Returns:
      future result of the operation.
    • impersonate

      public Completable impersonate()
      Impersonates a second identity. The user will be redirected to the same origin where this call was made. It is important to notice that the redirect will only allow sources originating from a HTTP GET request.
      Returns:
      future result of the operation.
    • rxImpersonate

      public Completable rxImpersonate()
      Impersonates a second identity. The user will be redirected to the same origin where this call was made. It is important to notice that the redirect will only allow sources originating from a HTTP GET request.
      Returns:
      future result of the operation.
    • impersonate

      public Completable impersonate(String redirectUri)
      Impersonates a second identity. The user will be redirected to the given uri. It is important to notice that the redirect will only allow targets using an HTTP GET request.
      Parameters:
      redirectUri - the uri to redirect the user to after the authentication.
      Returns:
      future result of the operation.
    • rxImpersonate

      public Completable rxImpersonate(String redirectUri)
      Impersonates a second identity. The user will be redirected to the given uri. It is important to notice that the redirect will only allow targets using an HTTP GET request.
      Parameters:
      redirectUri - the uri to redirect the user to after the authentication.
      Returns:
      future result of the operation.
    • restore

      public Completable restore()
      Undo a previous call to a impersonation. The user will be redirected to the same origin where this call was made. It is important to notice that the redirect will only allow sources originating from a HTTP GET request.
      Returns:
      future result of the operation.
    • rxRestore

      public Completable rxRestore()
      Undo a previous call to a impersonation. The user will be redirected to the same origin where this call was made. It is important to notice that the redirect will only allow sources originating from a HTTP GET request.
      Returns:
      future result of the operation.
    • restore

      public Completable restore(String redirectUri)
      Undo a previous call to an impersonation. The user will be redirected to the given uri. It is important to notice that the redirect will only allow targets using an HTTP GET request.
      Parameters:
      redirectUri - the uri to redirect the user to after the re-authentication.
      Returns:
      future result of the operation.
    • rxRestore

      public Completable rxRestore(String redirectUri)
      Undo a previous call to an impersonation. The user will be redirected to the given uri. It is important to notice that the redirect will only allow targets using an HTTP GET request.
      Parameters:
      redirectUri - the uri to redirect the user to after the re-authentication.
      Returns:
      future result of the operation.
    • logout

      public Completable logout(String redirectUri)
      Logout can be called from any route handler which needs to terminate a login session. Invoking logout will remove the User and clear the Session (if any) in the current context. Followed by a redirect to the given uri.
      Parameters:
      redirectUri - the uri to redirect the user to after the logout.
      Returns:
      future result of the operation.
    • rxLogout

      public Completable rxLogout(String redirectUri)
      Logout can be called from any route handler which needs to terminate a login session. Invoking logout will remove the User and clear the Session (if any) in the current context. Followed by a redirect to the given uri.
      Parameters:
      redirectUri - the uri to redirect the user to after the logout.
      Returns:
      future result of the operation.
    • logout

      public Completable logout()
      Logout can be called from any route handler which needs to terminate a login session. Invoking logout will remove the User and clear the Session (if any) in the current context. Followed by a redirect to /.
      Returns:
      future result of the operation.
    • rxLogout

      public Completable rxLogout()
      Logout can be called from any route handler which needs to terminate a login session. Invoking logout will remove the User and clear the Session (if any) in the current context. Followed by a redirect to /.
      Returns:
      future result of the operation.
    • clear

      public void clear()
      Clear can be called from any route handler which needs to terminate a login session. Invoking logout will remove the User and clear the Session (if any) in the current context. Unlike logout(String) no redirect will be performed.
    • newInstance

      public static UserContext newInstance(UserContext arg)