package br.com.developer.redu.http;
/**
* Created with IntelliJ IDEA.
* User: igor
* Date: 8/30/12
* Time: 8:46 AM
* To change this template use File | Settings | File Templates.
*/
import org.scribe.builder.api.DefaultApi20;
import org.scribe.extractors.AccessTokenExtractor;
import org.scribe.extractors.JsonTokenExtractor;
import org.scribe.model.OAuthConfig;
import org.scribe.model.Verb;
import org.scribe.utils.OAuthEncoder;
public class ReduOauth2 extends DefaultApi20 {
private static final String AUTHORIZE_URL = "http://www.openredu.com/oauth/authorize?client_id=%s";
@Override
public Verb getAccessTokenVerb() {
return Verb.POST;
}
@Override
public String getAccessTokenEndpoint() {
return "http://openredu.com/oauth/token?grant_type=authorization_code";
}
@Override
public String getAuthorizationUrl(OAuthConfig config) {
//Preconditions.checkValidUrl(config.getCallback(), "MUST PROVIDE A VALID URL, REDU DOESNT SUPPORT OOB");
return String.format(AUTHORIZE_URL, config.getApiKey(),
OAuthEncoder.encode(config.getCallback()));
}
@Override
public AccessTokenExtractor getAccessTokenExtractor() {
return new JsonTokenExtractor();
}
}