Package oauthP5.apis

Source Code of oauthP5.apis.OpenPathsApi$OpenPathsBaseStringExtractor

package oauthP5.apis;

import oauthP5.oauth.BaseStringExtractor;
import oauthP5.oauth.BaseStringExtractorImpl;
import oauthP5.oauth.OAuthRequest;
import oauthP5.oauth.Parameter;
import oauthP5.oauth.ParameterList;
import oauthP5.oauth.Token;


/**
* @author achang
*
*/
public class OpenPathsApi extends DefaultApi10a {

  @Override
  public String getAccessTokenEndpoint() {
    return null;
  }

  @Override
  public String getRequestTokenEndpoint() {
    return null;
  }

  @Override
  public String getAuthorizationUrl(Token requestToken) {
    return null;
  }

  @Override
  public BaseStringExtractor getBaseStringExtractor() {
    return new OpenPathsBaseStringExtractor();
  }

  /**
   * So these are actually non-ideal because they require changing access
   * levels of Scribe's original code (which means we can't use Scribe in a
   * jar.) But maybe that's okay and we only want selected parts of Scribe in
   * our P5-OAuth library anyway.
   *
   * @author achang
   */
  public class ParameterListExt extends ParameterList {
    public boolean remove(Parameter p) {
      return params.remove(p);
    }
  }

  /**
   * @author achang
   */
  public class OpenPathsBaseStringExtractor extends BaseStringExtractorImpl {
    @Override
    protected String getSortedAndEncodedParams(OAuthRequest request) {
      ParameterListExt params = new ParameterListExt();
      params.addAll(request.getQueryStringParams());
      params.addAll(request.getBodyParams());
      params.addAll(new ParameterList(request.getOauthParameters()));
      System.out.println(params.remove(new Parameter("oauth_token", "")));
      return params.sort().asOauthBaseString();
    }

  }

}
TOP

Related Classes of oauthP5.apis.OpenPathsApi$OpenPathsBaseStringExtractor

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.