package org.oauth2.client4j.http.response;
import java.util.HashMap;
import java.util.Map;
import org.oauth2.client4j.common.OAuth;
import org.oauth2.client4j.exception.OAuthException;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONException;
public class JSONAccessTokenResponse extends OAuthResponse
{
protected Map<String, Object> json = new HashMap<String, Object>();
public String getAccessToken()
{
return getParam(OAuth.OAUTH_ACCESS_TOKEN);
}
public Long getExpiresIn()
{
String value = getParam(OAuth.OAUTH_EXPIRES_IN);
return value == null ? null : Long.valueOf(value);
}
public Map<String, Object> getJson()
{
return json;
}
@Override
public void setBody(String body)
{
try
{
super.setBody(body);
json = JSON.parseObject(body);
} catch (JSONException e)
{
// System.out.println("Invalid response! Response body is not "
// + OAuth.ContentType.JSON + " encoded");
throw new OAuthException(e);
}
}
protected String getParam(String param)
{
Object value = json.get(param);
return value == null ? null : String.valueOf(value);
}
}