Class OAuth1AuthorizationFlowImpl

java.lang.Object
org.glassfish.jersey.client.oauth1.OAuth1AuthorizationFlowImpl
All Implemented Interfaces:
OAuth1AuthorizationFlow

class OAuth1AuthorizationFlowImpl extends Object implements OAuth1AuthorizationFlow
Default implementation of OAuth1AuthorizationFlow. The instance is used to perform authorization flows.
Since:
2.3
  • Field Details

    • LOGGER

      private static final Logger LOGGER
    • parameters

      private final OAuth1Parameters parameters
      The OAuth parameters to be used in generating signature.
    • secrets

      private final OAuth1Secrets secrets
      The OAuth secrets to be used in generating signature.
    • requestTokenUri

      private final String requestTokenUri
    • accessTokenUri

      private final String accessTokenUri
    • authorizationUri

      private final String authorizationUri
    • client

      private final javax.ws.rs.client.Client client
    • accessToken

      private volatile AccessToken accessToken
    • oAuth1ClientFilterFeature

      private final Value<javax.ws.rs.core.Feature> oAuth1ClientFilterFeature
  • Constructor Details

    • OAuth1AuthorizationFlowImpl

      private OAuth1AuthorizationFlowImpl(OAuth1Parameters params, OAuth1Secrets secrets, String requestTokenUri, String accessTokenUri, String authorizationUri, String callbackUri, javax.ws.rs.client.Client client, boolean enableLogging)
  • Method Details

    • addProperties

      private javax.ws.rs.client.Invocation.Builder addProperties(javax.ws.rs.client.Invocation.Builder invocationBuilder)
    • start

      public String start()
      Description copied from interface: OAuth1AuthorizationFlow
      Start the authorization process and return redirection URI on which the user should give a consent for our application to access resources.

      Note: the method makes a request to the Authorization Server in order to get request token.

      Specified by:
      start in interface OAuth1AuthorizationFlow
      Returns:
      URI to which user should be redirected.
    • finish

      public AccessToken finish()
      Description copied from interface: OAuth1AuthorizationFlow
      Finish the authorization process and return the AccessToken. The method must be called on the same instance after the OAuth1AuthorizationFlow.start() method was called and user granted access to this application.

      The method makes a request to the Authorization Server but does not exchange verifier for access token. This method is intended only for some flows/cases in OAuth1.

      Specified by:
      finish in interface OAuth1AuthorizationFlow
      Returns:
      Access token.
    • finish

      public AccessToken finish(String verifier)
      Description copied from interface: OAuth1AuthorizationFlow
      Finish the authorization process and return the AccessToken. The method must be called on the same instance after the OAuth1AuthorizationFlow.start() method was called and user granted access to this application.

      The method makes a request to the Authorization Server in order to exchange verifier for access token.

      Specified by:
      finish in interface OAuth1AuthorizationFlow
      Parameters:
      verifier - Verifier provided from the user authorization.
      Returns:
      Access token.
    • getAuthorizedClient

      public javax.ws.rs.client.Client getAuthorizedClient()
      Description copied from interface: OAuth1AuthorizationFlow
      Return the client configured for performing authorized requests to the Service Provider. The authorization process must be successfully finished by instance by calling methods OAuth1AuthorizationFlow.start() and OAuth1AuthorizationFlow.finish(String).
      Specified by:
      getAuthorizedClient in interface OAuth1AuthorizationFlow
      Returns:
      Client configured to add correct Authorization header to requests.
    • getOAuth1Feature

      public javax.ws.rs.core.Feature getOAuth1Feature()
      Description copied from interface: OAuth1AuthorizationFlow
      Return the oauth filter feature that can be used to configure client instances to perform authenticated requests to the Service Provider.

      The authorization process must be successfully finished by instance by calling methods OAuth1AuthorizationFlow.start() and OAuth1AuthorizationFlow.finish(String).

      Specified by:
      getOAuth1Feature in interface OAuth1AuthorizationFlow
      Returns:
      oauth filter feature configured with received AccessToken.