Class OauthTokenHandler

java.lang.Object
org.refcodes.web.OauthTokenImpl
org.refcodes.rest.OauthTokenHandler
All Implemented Interfaces:
org.refcodes.mixin.Disposable, org.refcodes.mixin.Disposable.Disposedable, org.refcodes.mixin.DisposedAccessor, org.refcodes.mixin.ValidAccessor, org.refcodes.web.OauthToken

public class OauthTokenHandler
extends org.refcodes.web.OauthTokenImpl
implements org.refcodes.web.OauthToken
Self refreshing implementation of the OauthToken. In case a refresh token (as of OauthTokenImpl.getRefreshToken() and has been provided, then the access token (as of OauthTokenImpl.getAccessToken() is refreshed within the "expires in" time (as of OauthTokenImpl.getExpiresIn(). The refresh daemon terminates and this instance is disposed when the provided HttpRestClient's Closable.close() method is called or the dispose() method is invoked.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.refcodes.mixin.Disposable

    org.refcodes.mixin.Disposable.Disposedable

    Nested classes/interfaces inherited from interface org.refcodes.mixin.DisposedAccessor

    org.refcodes.mixin.DisposedAccessor.DisposedMutator, org.refcodes.mixin.DisposedAccessor.DisposedProperty

    Nested classes/interfaces inherited from interface org.refcodes.mixin.ValidAccessor

    org.refcodes.mixin.ValidAccessor.ValidBuilder<B extends org.refcodes.mixin.ValidAccessor.ValidBuilder<B>>, org.refcodes.mixin.ValidAccessor.ValidMutator, org.refcodes.mixin.ValidAccessor.ValidProperty
  • Field Summary

    Fields inherited from class org.refcodes.web.OauthTokenImpl

    _accessToken, _expiresIn, _notBeforePolicy, _refreshExpiresIn, _refreshToken, _scope, _sessionState, _tokenType
  • Constructor Summary

    Constructors
    Constructor Description
    OauthTokenHandler​(String aUrl, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(String aUrl, String aClientId, String aClientSecret, String aUserName, String aUserPassword)
    Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
    OauthTokenHandler​(String aUrl, HttpRestClient aHttpRestClient, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(String aUrl, HttpRestClient aHttpRestClient, String aClientId, String aClientSecret, String aUserName, String aUserPassword)
    Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
    OauthTokenHandler​(String aUrl, HttpRestClient aHttpRestClient, org.refcodes.web.OauthToken aOauthToken)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(String aUrl, org.refcodes.web.OauthToken aOauthToken)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, String aClientId, String aClientSecret, String aUserName, String aUserPassword)
    Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, String aClientId, String aClientSecret, String aUserName, String aUserPassword)
    Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, org.refcodes.web.HttpBodyMap aOauthToken)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, org.refcodes.web.OauthToken aOauthToken)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, org.refcodes.web.HttpBodyMap aOauthToken)
    Constructs an instance of the OauthTokenHandler with the given parameters.
    OauthTokenHandler​(org.refcodes.web.Url aUrl, org.refcodes.web.OauthToken aOauthToken)
    Constructs an instance of the OauthTokenHandler with the given parameters.
  • Method Summary

    Modifier and Type Method Description
    void dispose()

    Methods inherited from class org.refcodes.web.OauthTokenImpl

    fromHttpBodyMap, getAccessToken, getExpiresIn, getNotBeforePolicy, getRefreshExpiresIn, getRefreshToken, getScope, getSessionState, getTokenType, isDisposed, isValid

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.refcodes.mixin.DisposedAccessor

    isDisposed

    Methods inherited from interface org.refcodes.web.OauthToken

    getAccessToken, getExpiresIn, getNotBeforePolicy, getRefreshExpiresIn, getRefreshToken, getScope, getSessionState, getTokenType, isValid
  • Constructor Details

    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, String aClientId, String aClientSecret, String aUserName, String aUserPassword) throws org.refcodes.web.HttpStatusException, MalformedURLException
      Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aUserName - The user's name for "password" grant type.
      aUserPassword - The user's password for "password" grant type.
      aClientId - The client's TID for "password" grant type.
      aClientSecret - The client's secret for "password" grant type.
      Throws:
      MalformedURLException - thrown in case of a malformed URL.
      org.refcodes.web.HttpStatusException - thrown in case a HTTP response was of an erroneous status.
    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, String aClientId, String aClientSecret, String aUserName, String aUserPassword) throws org.refcodes.web.HttpStatusException, MalformedURLException
      Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aHttpRestClient - The HttpRestClient to use when refreshing the token.
      aUserName - The user's name for "password" grant type.
      aUserPassword - The user's password for "password" grant type.
      aClientId - The client's TID for "password" grant type.
      aClientSecret - The client's secret for "password" grant type.
      Throws:
      MalformedURLException - thrown in case of a malformed URL.
      org.refcodes.web.HttpStatusException - thrown in case a HTTP response was of an erroneous status.
    • OauthTokenHandler

      public OauthTokenHandler​(String aUrl, String aClientId, String aClientSecret, String aUserName, String aUserPassword) throws org.refcodes.web.HttpStatusException, MalformedURLException
      Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
      Parameters:
      aUrl - The URL to be used when refreshing the access token.
      aUserName - The user's name for "password" grant type.
      aUserPassword - The user's password for "password" grant type.
      aClientId - The client's TID for "password" grant type.
      aClientSecret - The client's secret for "password" grant type.
      Throws:
      MalformedURLException - thrown in case of a malformed URL.
      org.refcodes.web.HttpStatusException - thrown in case a HTTP response was of an erroneous status.
    • OauthTokenHandler

      public OauthTokenHandler​(String aUrl, HttpRestClient aHttpRestClient, String aClientId, String aClientSecret, String aUserName, String aUserPassword) throws org.refcodes.web.HttpStatusException, MalformedURLException
      Constructs an instance of the OauthTokenHandler with the given parameters by using the user's name and password for a "password" grant type authentication to retrieve a OauthToken.
      Parameters:
      aUrl - The URL to be used when refreshing the access token.
      aHttpRestClient - The HttpRestClient to use when refreshing the token.
      aUserName - The user's name for "password" grant type.
      aUserPassword - The user's password for "password" grant type.
      aClientId - The client's TID for "password" grant type.
      aClientSecret - The client's secret for "password" grant type.
      Throws:
      MalformedURLException - thrown in case of a malformed URL.
      org.refcodes.web.HttpStatusException - thrown in case a HTTP response was of an erroneous status.
    • OauthTokenHandler

      public OauthTokenHandler​(String aUrl, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
      Constructs an instance of the OauthTokenHandler with the given parameters. For the refresh token parameters, please refer to "https://www.oauth.com/oauth2-servers/access-tokens/refreshing-access-tokens".
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aAccessToken - The access token to be stored (as of OauthTokenImpl.getAccessToken()).
      aRefreshToken - The refresh token to be used (as of OauthTokenImpl.getRefreshToken()).
      aTokenType - The token type to be stored (as of OauthTokenImpl.getTokenType()).
      aExpiresIn - The "expires in" time to be stored (as of OauthTokenImpl.getExpiresIn()).
      aScope - The scope to be stored (as of OauthTokenImpl.getScope()).
    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
      Constructs an instance of the OauthTokenHandler with the given parameters.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aAccessToken - The access token to be stored (as of OauthTokenImpl.getAccessToken()).
      aRefreshToken - The refresh token to be used (as of OauthTokenImpl.getRefreshToken()).
      aTokenType - The token type to be stored (as of OauthTokenImpl.getTokenType()).
      aExpiresIn - The "expires in" time to be stored (as of OauthTokenImpl.getExpiresIn()).
      aScope - The scope to be stored (as of OauthTokenImpl.getScope()).
    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, org.refcodes.web.HttpBodyMap aOauthToken)
      Constructs an instance of the OauthTokenHandler with the given parameters.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aOauthToken - The HttpBodyMap containing the OAuth token with the required information.
    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, org.refcodes.web.OauthToken aOauthToken)
      Constructs an instance of the OauthTokenHandler with the given parameters.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aOauthToken - The OauthToken containing the required information.
    • OauthTokenHandler

      public OauthTokenHandler​(String aUrl, org.refcodes.web.OauthToken aOauthToken)
      Constructs an instance of the OauthTokenHandler with the given parameters. For the refresh token parameters, please refer to "https://www.oauth.com/oauth2-servers/access-tokens/refreshing-access-tokens".
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aOauthToken - The OauthToken containing the required information.
    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
      Constructs an instance of the OauthTokenHandler with the given parameters.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aHttpRestClient - The HttpRestClient to use when refreshing the token.
      aAccessToken - The access token to be stored (as of OauthTokenImpl.getAccessToken()).
      aRefreshToken - The refresh token to be used (as of OauthTokenImpl.getRefreshToken()).
      aTokenType - The token type to be stored (as of OauthTokenImpl.getTokenType()).
      aExpiresIn - The "expires in" time to be stored (as of OauthTokenImpl.getExpiresIn()).
      aScope - The scope to be stored (as of OauthTokenImpl.getScope()).
    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, org.refcodes.web.HttpBodyMap aOauthToken)
      Constructs an instance of the OauthTokenHandler with the given parameters.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aHttpRestClient - The HttpRestClient to use when refreshing the token.
      aOauthToken - The HttpBodyMap containing the OAuth token with the required information.
    • OauthTokenHandler

      public OauthTokenHandler​(String aUrl, HttpRestClient aHttpRestClient, org.refcodes.web.OauthToken aOauthToken)
      Constructs an instance of the OauthTokenHandler with the given parameters.
      Parameters:
      aUrl - The URL to be used when refreshing the access token.
      aHttpRestClient - The HttpRestClient to use when refreshing the token.
      aOauthToken - The OauthToken containing the required information.
    • OauthTokenHandler

      public OauthTokenHandler​(org.refcodes.web.Url aUrl, HttpRestClient aHttpRestClient, org.refcodes.web.OauthToken aOauthToken)
      Constructs an instance of the OauthTokenHandler with the given parameters.
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aHttpRestClient - The HttpRestClient to use when refreshing the token.
      aOauthToken - The OauthToken containing the required information.
    • OauthTokenHandler

      public OauthTokenHandler​(String aUrl, HttpRestClient aHttpRestClient, String aAccessToken, String aRefreshToken, String aTokenType, Integer aExpiresIn, String aScope)
      Constructs an instance of the OauthTokenHandler with the given parameters. For the refresh token parameters, please refer to "https://www.oauth.com/oauth2-servers/access-tokens/refreshing-access-tokens".
      Parameters:
      aUrl - The Url to be used when refreshing the access token.
      aHttpRestClient - The HttpRestClient to use when refreshing the token.
      aAccessToken - The access token to be stored (as of OauthTokenImpl.getAccessToken()).
      aRefreshToken - The refresh token to be used (as of OauthTokenImpl.getRefreshToken()).
      aTokenType - The token type to be stored (as of OauthTokenImpl.getTokenType()).
      aExpiresIn - The "expires in" time to be stored (as of OauthTokenImpl.getExpiresIn()).
      aScope - The scope to be stored (as of OauthTokenImpl.getScope()).
  • Method Details

    • dispose

      public void dispose()
      Specified by:
      dispose in interface org.refcodes.mixin.Disposable
      Overrides:
      dispose in class org.refcodes.web.OauthTokenImpl