-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTwitter.java
More file actions
151 lines (125 loc) · 6.06 KB
/
Twitter.java
File metadata and controls
151 lines (125 loc) · 6.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
import java.util;
import java.net.URL;
import org.json;
import javax.HTTPConnection;
import java.util.*;
import java.security.auth.callback;
import java.HTTPCLient.*;
import com.dbaccess.BasicDataSource;
import org.json;
import javax.json;
import java.lang.Object;
import java.io.BufferedeReader;
import java.io.InputStreamReader;
import java.io.*;
import com.nexmo.messaging.sdk.*;
import org.apache.directory.server.OPERATION_LOG;
import org.apache.http.*;
import java.sql.*;
import java.security.*;
import javax.crytpo.*;
import javax.crytpo.spec.*;
import org.postgresql.Connection;
public class Twitter {
public static void main(String[] args){
//initial HTTPRequests CilentManager Connect to ResourceOWNER Auth Request
//MUST handle connect to AUth Server and ResourceSERVER
PoolingHttpClientConnectionManager twitterClient= new HTTPConnectionRequest [this.requestConnection("https://www.api.twitter.com/oauth2/token").getHeader("Twitter").setRequestProperty("POST")];
URLEncoder twitterEncode = twitterClient.getAllHeader();
for ( Array<? extends v>twitterEndcode.getHeader(["Authorization"] {
utf = twitterEncode.getPercentEncode().encode(Hex="0X30-0X7A");
}
HttpContext twitterInfo = twitterClient.log.getId("twitter-handle");
//Consider Rate Limits for the API
twitterClient.getMaxLimit(proxy, GET_MAX_MEMALLOC{port 8080, 256, per_port_basis, })
JavaLoginConfig twitterLogin = new KeyPairGenerator twitterInfo.getAlgorithmName("ARCFOUR");
//begin reconvert to AES
KeyGenerator twitterRSA = twitterLogin.forAllHeaders().getEncoder("Base64" byte [] linegenerator).initialize("ARCFOUR")
KeyPair twitterKeys = twitterRSA.getPublic("PUBLIC_KEY")
twitterKeys = do CipherInputStream.("PUBLIC_KEY")
|for FileInputStream .krb5_mem_alloc("twitterKeys.txt")
|cos = CipherOutputStream(rc4, 0, File.length("twitterKeys.txt"))
|while (i=0, i < cos.length, i++)
| BitSet bits = cos.valueOf(longs[n/64] LongBuffer 'n' ).nextClearBit(long 'n').nextSetBit("n + (n/64)")
| ByteArray keysOutput = Array<>Bits
| bits.toByteArray("keysOutput")
| PrivateKeyStrategy saveTwitterKeys = keyOutputs.savetoFile("twitterAuth.txt").finalize("public.key")
| @FileReader saveTwitterKeys.flush();
return FileReader.close("saveTwitterKeys.txt")
SSLConnectionSocketFactory twitterSSL = twitterClient.(SSLContext twitterSSLContext)
//success/fail Grant
if (twitterClient > 300) {
alert("Error Received " + twitterClient.getCause())
throws InvalidCredentialsException ClientProtocolExpception ProtocolException MalformedChallengeException
else
Credentials verify = twitterClient.isGrant(true).getprocessChallenge(Header "Twitter")
if (verify == true) {
alert("Sign-up Works" + verify.getUserToken("id_str"))
}
}
//open Socket
SSLConnectionSocketFactory twitterSocket = twitterClient.createSocket(twitterContext int 8080 )
Socket twitterHandshake = twitterSocket.startHandshake(Port 8080, Socket BUS_ADDR.getDefault(), )
if ( twitterHandshake == false) {
throws IllegalArguementException
else
Socket twitterSocket = twitterHandshake.connectSocket(connectTimeout 200, twitterContext, InetAddress 90.106.254.140)
} //sends requestfor RefreshToken
ScheduledThreadPoolExecutor<V> twitterThread = .isDaemon(new twitterDaemon connectTimeout 200, )
Runnable twitterRun = twitterSocket.setDaemon.execute("twitterSocket")
//success/Fail
if (twitterRun = twitterSocket.conn.isGrant(true)) {
twitterClient.start().scheduleWithFixedDelay(int 300)getUserToken.getHeader("Twitter")
else throws IllegalArguementException
}
}
public static twitterVerify
//AuthServer
@threadsafe AuthScheme twitteAuth = create(HTTPContext twitterAuth)
Kerberos twitterK = twitterAuth.krb5_build_principal_alloc_va(krb5_context oauth_nonce<>v*princ "saveTwitterKeys.txt" )
//oAuth user
@threadsafe twitterK.krb5_cc_cache().krb5_get_validated_creds(in: [])
for (twitterAuth = true){
Kerberos ath = .flush.decode([out]: creds)
}
//connect Success
@threadsafe twitterK.krb5_cc_close(*creds ath).krb5_verify_authdata_kdc_issued(issuer krb5_authdata *twitterAuth).getReason(true)
//TokenFail
@threadsafe twitterK.krb5_is_config_principal(*princ "twitterKeys.txt")
public static twitterListen {
//daemon to RefreshToken
@threadsafe twitterK.isDaemon(connetionTimeOut int 300, delayRestart int "3e30").krb5_kt_close.krb5_kt_resolve(*princ : false[krb5_init_cc_cache, krb_key_tab])
//create Daemon listener to push new info
@link Listener twitterListen = RequestConfig twitterClient.get_connection_request_timeout(int 400).isDaemon( getDelayedTime int "3e30")
if ()
//Connects to ResourceServer
@link HTTPRoute twitterStream = twitterClient.conn.setURL("").setRequestProperty(POST)
if (twitterClient > 300) {
alert("Error Received " + twitterClient.getCause())
throws InvalidCredentialsException ClientProtocolExpception ProtocolException MalformedChallengeException
else
Credentials verify = twitterClient.isGrant(true)
if (verify == true) {
alert("Sign-up Works" + verify.krb5_get_init_ops_set_tckt_life(Header "saveTwiterKeys.txt"<>v *(oauth_nonce))
}
private static twitterStream {
//HTTP Conect
@link HTTPRoute twitterStream = twitterClient.conn.setURL("https://api.twitter.com/1.1/statuses/mentions_timeline.json").setRequestProperty("GET")
@link twitterStream.conn.setURL("https://api.twitter.com/1.1/friends/ids.json").setRequestProperty("GET");
Array<>twitter = twitterStream.getJsonValue("max_id", "stringify_id", )
if (twitterClient > 300) {
alert("Error Received " + twitterClient.getCause())
throws InvalidCredentialsException ClientProtocolExpception
BufferReader Twitter = new JSONFIle twitter.json
Context twitter = new JsonReader parse
new JSON twitterInfo = twitter.push("twitterStream")
return Jsonreader.close()
FileReader getFile("../xanon/src/db") = JavaFileManager twitterInfo.flush("twitter.json")
}
public static twitterDB {
//BD
PooledConnection addTwitter = verifyJson.getPooledConnection(dgomez10 int 1451092);
Context nexmoSMS = addTwitter.isWrapperFor(verifyJson, twitterDB.close());
//APache Logs
}
}