package org.oauth2.client4j.http;
import java.util.HashMap;
import java.util.Map;
import org.oauth2.client4j.utils.OAuthKit;
public class OAuthRequest implements Request
{
protected String requestUrl;
protected String requestType;
protected Map<String, String> headers;
protected Map<String, String> parameters;
protected Map<String, String> bodyNameValuePair;
public OAuthRequest()
{
headers = new HashMap<String, String>();
parameters = new HashMap<String, String>();
bodyNameValuePair = new HashMap<String, String>();
}
public String getLocationUri()
{
if (requestUrl != null)
{
boolean containsQuestionMark = requestUrl.contains("?");
StringBuffer url = new StringBuffer(requestUrl);
StringBuffer query = new StringBuffer(OAuthKit.format(
parameters.entrySet(), "UTF-8"));
if (!OAuthKit.isEmpty(query.toString()))
{
if (containsQuestionMark)
{
url.append("&").append(query);
} else
{
url.append("?").append(query);
}
}
this.requestUrl = url.toString();
}
return requestUrl;
}
public Map<String, String> getBodyNameValuePair(){
return bodyNameValuePair;
}
public String getRequestType()
{
return requestType;
}
public void setRequestType(String requestType)
{
this.requestType = requestType;
}
public Map<String, String> getHeaders()
{
return headers;
}
public void setHeaders(Map<String, String> headers)
{
this.headers = headers;
}
@Override
public void addHeader(String name, String header)
{
this.headers.put(name, header);
}
public String getRequestUrl()
{
return requestUrl;
}
public void setRequestUrl(String requestUrl)
{
this.requestUrl = requestUrl;
}
@Override
public void addParameter(String name, String value)
{
this.parameters.put(name, value);
}
public void addBodyNameValuePair(String name, String value)
{
bodyNameValuePair.put(name, value);
}
}