Files
@ dc1cc4170e4a
Branch filter:
Location: libtransport.git/backends/twitter/Requests/PINExchangeProcess.cpp - annotation
dc1cc4170e4a
2.6 KiB
text/x-c++hdr
Do not forward user's contact (representing himself) from legacy network (situation when user A has himself in his XMPP roster)
cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f e0f196352531 cb62e786889f cb62e786889f e9891aa2000a e9891aa2000a e9891aa2000a e9891aa2000a e9891aa2000a c236c464ffac c236c464ffac c236c464ffac e0f196352531 e9891aa2000a e9891aa2000a e9891aa2000a e9891aa2000a e9891aa2000a cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f e0f196352531 cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f cb62e786889f | #include "PINExchangeProcess.h"
DEFINE_LOGGER(logger, "PINExchangeProcess")
void PINExchangeProcess::run()
{
LOG4CXX_INFO(logger, user << ": Sending PIN " << data)
LOG4CXX_INFO(logger, user << " " << twitObj->getProxyServerIp() << " " << twitObj->getProxyServerPort())
twitObj->getOAuth().setOAuthPin( data );
success = twitObj->oAuthAccessToken();
}
void PINExchangeProcess::finalize()
{
if(!success) {
LOG4CXX_ERROR(logger, user << ": Error while exchanging PIN for Access Token!")
np->handleMessage(user, "twitter.com", "Error while exchanging PIN for Access Token!");
np->handleLogoutRequest(user, "");
} else {
std::string replyMsg;
while(replyMsg.length() == 0) {
twitObj->getLastWebResponse(replyMsg);
}
Error error = getErrorMessage(replyMsg);
if(error.getMessage().length()) {
LOG4CXX_ERROR(logger, user << ": Error while exchanging PIN for Access Token! " << error.getMessage())
np->handleMessage(user, "twitter.com", error.getMessage());
np->handleLogoutRequest(user, "");
return;
}
std::string OAuthAccessTokenKey, OAuthAccessTokenSecret;
twitObj->getOAuth().getOAuthTokenKey( OAuthAccessTokenKey );
twitObj->getOAuth().getOAuthTokenSecret( OAuthAccessTokenSecret );
if(np->storeUserOAuthKeyAndSecret(user, OAuthAccessTokenKey, OAuthAccessTokenSecret) == false) {
np->handleLogoutRequest(user, "");
return;
}
np->pinExchangeComplete(user, OAuthAccessTokenKey, OAuthAccessTokenSecret);
np->handleMessage(user, "twitter.com", "PIN is OK. You are now authorized.");
LOG4CXX_INFO(logger, user << ": Sent PIN " << data << " and obtained Access Token");
}
}
/*void handlePINExchange(const std::string &user, std::string &data) {
sessions[user]->getOAuth().setOAuthPin( data );
if (sessions[user]->oAuthAccessToken() == false) {
LOG4CXX_ERROR(logger, user << ": Error while exchanging PIN for Access Token!")
handleLogoutRequest(user, "");
return;
}
std::string OAuthAccessTokenKey, OAuthAccessTokenSecret;
sessions[user]->getOAuth().getOAuthTokenKey( OAuthAccessTokenKey );
sessions[user]->getOAuth().getOAuthTokenSecret( OAuthAccessTokenSecret );
UserInfo info;
if(storagebackend->getUser(user, info) == false) {
LOG4CXX_ERROR(logger, "Didn't find entry for " << user << " in the database!")
handleLogoutRequest(user, "");
return;
}
storagebackend->updateUserSetting((long)info.id, OAUTH_KEY, OAuthAccessTokenKey);
storagebackend->updateUserSetting((long)info.id, OAUTH_SECRET, OAuthAccessTokenSecret);
connectionState[user] = CONNECTED;
LOG4CXX_INFO(logger, user << ": Sent PIN " << data << " and obtained Access Token");
}*/
|