package com.socioboard.t_board_pro.twitterapi;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import javax.net.ssl.HttpsURLConnection;
import com.socioboard.t_board_pro.util.MainSingleTon;
public class TwitterSignIn {
public TwitterSignIn() {
}
public String postForRequestToken() {
String response = null;
try {
// perams
String urlTimeline = MainSingleTon.reqTokenResourceURL;
String authData = getAuthDAta(urlTimeline);
myprint("url : " + urlTimeline);
// myprint("authData : " + authData);
URL obj = new URL(urlTimeline);
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
con.setRequestMethod("POST");
con.addRequestProperty("Authorization", authData);
con.addRequestProperty("Host", "api.twitter.com");
con.addRequestProperty("User-Agent", "twtboardpro");
con.addRequestProperty("Accept", "*/*");
response = readResponse(con);
myprint("jsonString response = " + response);
} catch (Exception e) {
e.printStackTrace();
myprint("Exception = = " + e);
}
return response;
}
// Reads a response for a given connection and returns it as a string.
public String readResponse(HttpsURLConnection connection) {
try {
myprint("readResponse getting ");
int responseCode = connection.getResponseCode();
myprint("readResponse connection.getResponseCode() "
+ responseCode);
String jsonString = null;
if (responseCode == HttpURLConnection.HTTP_OK) {
InputStream linkinStream = connection.getInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int j = 0;
while ((j = linkinStream.read()) != -1) {
baos.write(j);
}
byte[] data = baos.toByteArray();
jsonString = new String(data);
}
// myprint("readResponse jsonString " + jsonString);
return jsonString;
} catch (IOException e) {
// twitterRequestCallBack.onFailure(e);
e.printStackTrace();
myprint("readResponse IOExceptionException " + e);
return null;
}
}
private String getAuthDAta(String urlTimeline) {
AuthSignaturesGeneratorRequestToken oAuthSignaturesGenerator = new AuthSignaturesGeneratorRequestToken(
MainSingleTon.TWITTER_KEY, MainSingleTon.TWITTER_SECRET, "POST");
oAuthSignaturesGenerator.setUrl(MainSingleTon.reqTokenResourceURL);
String GeneratedPerams = null;
try {
GeneratedPerams = "OAuth "
+ oAuthSignaturesGenerator.OAUTH_CALLBACK
+ "=\""
+ URLEncoder.encode(MainSingleTon.oauth_callbackURL,
"ISO-8859-1")
+ "\", "
+ oAuthSignaturesGenerator.OAUTH_CONSUMER_KEY
+ "=\""
+ URLEncoder.encode(oAuthSignaturesGenerator.getcKey(),
"ISO-8859-1")
+ "\", "
+ oAuthSignaturesGenerator.OAUTH_NONCE
+ "=\""
+ URLEncoder.encode(oAuthSignaturesGenerator.currentOnonce,
"ISO-8859-1")
+ "\", "
+ oAuthSignaturesGenerator.OAUTH_SIGNATURE
+ "=\""
+ URLEncoder.encode(
oAuthSignaturesGenerator.getOauthSignature(),
"ISO-8859-1")
+ "\", "
+ oAuthSignaturesGenerator.OAUTH_SIGNATURE_METHOD
+ "=\""
+ URLEncoder.encode(oAuthSignaturesGenerator.HMAC_SHA1,
"ISO-8859-1")
+ "\", "
+ oAuthSignaturesGenerator.OAUTH_TIMESTAMP
+ "=\""
+ URLEncoder.encode(
oAuthSignaturesGenerator.currentTimeStamp,
"ISO-8859-1")
+ "\", "
+ oAuthSignaturesGenerator.OAUTH_VERSION
+ "=\""
+ URLEncoder.encode(oAuthSignaturesGenerator.VERSION_1_0,
"ISO-8859-1") + "\"";
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
myprint("GeneratedPerams UnsupportedEncodingException " + e);
}
String authenticateString = GeneratedPerams;
String authData = authenticateString;
return authData;
}
public void myprint(Object msg) {
System.out.println(msg.toString());
}
}