Class OAuthSignatureCalculator

java.lang.Object
com.ning.http.client.oauth.OAuthSignatureCalculator
All Implemented Interfaces:
SignatureCalculator

public class OAuthSignatureCalculator extends Object implements SignatureCalculator
Simple OAuth signature calculator that can used for constructing client signatures for accessing services that use OAuth for authorization.

Supports most common signature inclusion and calculation methods: HMAC-SHA1 for calculation, and Header inclusion as inclusion method. Nonce generation uses simple random numbers with base64 encoding.

Author:
tatu (tatu.saloranta@iki.fi)
  • Field Details

  • Constructor Details

    • OAuthSignatureCalculator

      public OAuthSignatureCalculator(ConsumerKey consumerAuth, RequestToken userAuth)
      Parameters:
      consumerAuth - Consumer key to use for signature calculation
      userAuth - Request/access token to use for signature calculation
  • Method Details

    • calculateAndAddSignature

      public void calculateAndAddSignature(Request request, RequestBuilderBase<?> requestBuilder)
      Description copied from interface: SignatureCalculator
      Method called when RequestBuilder.build() method is called. Should first calculate signature information and then modify request (using passed RequestBuilder) to add signature (usually as an HTTP header).
      Specified by:
      calculateAndAddSignature in interface SignatureCalculator
      Parameters:
      request - Request that is being built; needed to access content to be signed
      requestBuilder - builder that can be used to modify request, usually by adding header that includes calculated signature. Be sure NOT to call RequestBuilder.build() since this will cause infinite recursion
    • calculateSignature

      public String calculateSignature(String method, Uri uri, long oauthTimestamp, String nonce, List<Param> formParams, List<Param> queryParams)
      Method for calculating OAuth signature using HMAC/SHA-1 method.
    • generateTimestamp

      protected long generateTimestamp()
    • generateNonce

      protected String generateNonce()