Changeset - e9891aa2000a
[Not reviewed]
backends/twitter/Requests/DirectMessageRequest.cpp
Show inline comments
 
#include "DirectMessageRequest.h"
 
#include "../TwitterResponseParser.h"
 

	
 
DEFINE_LOGGER(logger, "DirectMessageRequest")
 

	
 
void DirectMessageRequest::run() 
 
{
 
	replyMsg = "";
 
	if(twitObj->directMessageSend(username, data, false) == false) {
 
		LOG4CXX_ERROR(logger, user << ": Error while sending directed message to " << username );
 
		return;
 
@@ -11,6 +15,14 @@ void DirectMessageRequest::run()
 

	
 
void DirectMessageRequest::finalize()
 
{
 
	LOG4CXX_INFO(logger, user << ": Sent " << data << " to " << username)
 
	LOG4CXX_INFO(logger, user << ": Twitter reponse - " << replyMsg)
 
	if(replyMsg.length()) {
 
		std::string error = getErrorMessage(replyMsg);
 
		if(error.length()) {
 
			np->handleMessage(user, "twitter-account", error);
 
			LOG4CXX_INFO(logger, user << ": " << error);
 
		} else {
 
			LOG4CXX_INFO(logger, user << ": Sent " << data << " to " << username)
 
			LOG4CXX_INFO(logger, user << ": Twitter reponse - " << replyMsg)
 
		}
 
	}
 
}
backends/twitter/Requests/FetchFriends.cpp
Show inline comments
 
@@ -33,7 +33,14 @@ void FetchFriends::run()
 
void FetchFriends::finalize()
 
{
 
	if(replyMsg != "" ) {
 
		np->handleMessage(user, "twitter-account", userlist);
 
		std::string error = getErrorMessage(replyMsg);
 
		if(error.length()) {
 
			np->handleMessage(user, "twitter-account", error);
 
			LOG4CXX_INFO(logger, user << ": " << error);
 
		} else {
 
			LOG4CXX_INFO(logger, user << ": " << userlist);
 
			np->handleMessage(user, "twitter-account", userlist);
 
		}
 
	} else {
 
		twitObj->getLastCurlError( replyMsg );
 
		LOG4CXX_INFO(logger, user << " - friendsIdsGet error - " << replyMsg );
backends/twitter/Requests/HelpMessageRequest.cpp
Show inline comments
 
@@ -6,7 +6,7 @@ void HelpMessageRequest::run()
 
	helpMsg = helpMsg
 
			+ "\n******************************HELP************************************\n"
 
			+ "#status <your status> ==> Update your status\n"
 
			+ "#timeline             ==> Retrieve your timeline\n"
 
			+ "#timeline [username]  ==> Retrieve <username>'s timeline; Default - own timeline\n"
 
			+ "@<username> <message> ==> Send a directed message to the user <username>\n"
 
			+ "#help                 ==> Print this help message\n"
 
			+ "************************************************************************\n";
backends/twitter/Requests/PINExchangeProcess.cpp
Show inline comments
 
@@ -14,6 +14,20 @@ void PINExchangeProcess::finalize()
 
		LOG4CXX_ERROR(logger, user << ": Error while exchanging PIN for Access Token!")
 
		np->handleLogoutRequest(user, "");
 
	} else {
 
		std::string replyMsg;
 
		while(replyMsg.length() == 0) {
 
			twitObj->getLastWebResponse(replyMsg);
 
		}
 

	
 
		std::string error = getErrorMessage(replyMsg);
 
		if(error.length()) {
 
			LOG4CXX_ERROR(logger, user << ": Error while exchanging PIN for Access Token! " << error)
 
			np->handleMessage(user, "twitter-account", error);
 
			np->handleLogoutRequest(user, "");
 
			return;
 
		}
 

	
 

	
 
		std::string OAuthAccessTokenKey, OAuthAccessTokenSecret;
 
		twitObj->getOAuth().getOAuthTokenKey( OAuthAccessTokenKey );
 
		twitObj->getOAuth().getOAuthTokenSecret( OAuthAccessTokenSecret );
backends/twitter/Requests/StatusUpdateRequest.cpp
Show inline comments
 
#include "StatusUpdateRequest.h"
 
#include "../TwitterResponseParser.h"
 

	
 
DEFINE_LOGGER(logger, "StatusUpdateRequest")
 
void StatusUpdateRequest::run() 
 
{
 
@@ -14,10 +16,14 @@ void StatusUpdateRequest::run()
 
void StatusUpdateRequest::finalize()
 
{
 
	if(replyMsg != "" ) {
 
		LOG4CXX_INFO(logger, "Updated status for " << user << ": " << data);
 
		std::string error = getErrorMessage(replyMsg);
 
		if(error.length()) {
 
			np->handleMessage(user, "twitter-account", error);
 
			LOG4CXX_INFO(logger, user << ": " << error);
 
		} else	LOG4CXX_INFO(logger, "Updated status for " << user << ": " << data);
 
	} else {
 
		twitObj->getLastCurlError( replyMsg );
 
		LOG4CXX_ERROR(logger, user << "Error - " << replyMsg );
 
		LOG4CXX_ERROR(logger, user << ": CurlError - " << replyMsg );
 
	}
 
	return;
 
}
backends/twitter/Requests/TimelineRequest.cpp
Show inline comments
 
@@ -3,7 +3,7 @@ DEFINE_LOGGER(logger, "TimelineRequest")
 
void TimelineRequest::run()
 
{	
 
	replyMsg = ""; 
 
	if( twitObj->timelineHomeGet() ) {	
 
	if( twitObj->timelineUserGet(false, false, 20, userRequested, false) ) {	
 
		LOG4CXX_INFO(logger, "Sending timeline request for user " << user)
 

	
 
		while(replyMsg.length() == 0) {
 
@@ -23,8 +23,14 @@ void TimelineRequest::run()
 
void TimelineRequest::finalize()
 
{
 
	if(replyMsg.length()) {
 
		LOG4CXX_INFO(logger, user << "'s timeline\n" << replyMsg);
 
		np->handleMessage(user, "twitter-account", timeline); //send timeline
 
		std::string error = getErrorMessage(replyMsg);
 
		if(error.length()) {
 
			np->handleMessage(user, "twitter-account", error);
 
			LOG4CXX_INFO(logger, user << ": " << error);
 
		} else {	
 
			LOG4CXX_INFO(logger, user << "'s timeline\n" << replyMsg);
 
			np->handleMessage(user, "twitter-account", timeline); //send timeline
 
		}
 
	}
 
	else {
 
		twitObj->getLastCurlError( replyMsg );
backends/twitter/Requests/TimelineRequest.h
Show inline comments
 
@@ -15,15 +15,17 @@ class TimelineRequest : public Thread
 
{
 
	twitCurl *twitObj;
 
	std::string user;
 
	std::string userRequested;
 
	std::string replyMsg;
 
	std::string timeline;
 
	NetworkPlugin *np;
 

	
 
	public:
 
	TimelineRequest(NetworkPlugin *_np, twitCurl *obj, const std::string &_user) {
 
	TimelineRequest(NetworkPlugin *_np, twitCurl *obj, const std::string &_user, const std::string &_user2) {
 
		twitObj = obj->clone();
 
		np = _np;
 
		user = _user;
 
		userRequested = _user2;
 
	}
 

	
 
	~TimelineRequest() {
backends/twitter/TwitterPlugin.cpp
Show inline comments
 
@@ -107,7 +107,7 @@ void TwitterPlugin::handleMessageSendRequest(const std::string &user, const std:
 
		std::istringstream in(message.c_str());
 
		in >> cmd >> data;
 
		
 
		handleMessage(user, "twitter-account", cmd + " " + data);
 
		//handleMessage(user, "twitter-account", cmd + " " + data);
 

	
 
		if(cmd == "#pin") tp->runAsThread(new PINExchangeProcess(np, sessions[user], user, data));
 
		else if(cmd == "#help") tp->runAsThread(new HelpMessageRequest(np, user));
 
@@ -116,8 +116,9 @@ void TwitterPlugin::handleMessageSendRequest(const std::string &user, const std:
 
			tp->runAsThread(new DirectMessageRequest(np, sessions[user], user, username, data));
 
		}
 
		else if(cmd == "#status") tp->runAsThread(new StatusUpdateRequest(np, sessions[user], user, data));
 
		else if(cmd == "#timeline") tp->runAsThread(new TimelineRequest(np, sessions[user], user));
 
		else if(cmd == "#timeline") tp->runAsThread(new TimelineRequest(np, sessions[user], user, data));
 
		else if(cmd == "#friends") tp->runAsThread(new FetchFriends(np, sessions[user], user));
 
		else handleMessage(user, "twitter-account", "Unknown command! Type #help for a list of available commands.");
 
	}
 
}
 

	
backends/twitter/TwitterResponseParser.cpp
Show inline comments
 
@@ -98,3 +98,15 @@ std::vector<std::string> getIDs(std::string &xml)
 
	}
 
	return IDs;
 
}
 

	
 
std::string getErrorMessage(std::string &xml)
 
{
 
	std::string error;
 
	Swift::ParserElement::ref rootElement = Swift::StringTreeParser::parse(xml);
 

	
 
	const std::string xmlns = rootElement->getNamespace();
 
	const Swift::ParserElement::ref errorElement = rootElement->getChild(TwitterReponseTypes::error, xmlns);
 
	
 
	if(errorElement != NULL) error = errorElement->getText();
 
	return error;
 
}
backends/twitter/TwitterResponseParser.h
Show inline comments
 
@@ -25,6 +25,7 @@ namespace TwitterReponseTypes
 
	const std::string user = "user";
 
	const std::string users = "users";
 
	const std::string status = "status";
 
	const std::string error = "error";
 
};
 

	
 
//Class holding user data
 
@@ -98,6 +99,7 @@ class Status
 
std::vector<Status> getTimeline(std::string &xml);
 
std::vector<std::string> getIDs(std::string &xml);
 
std::vector<User> getUsers(std::string &xml);
 
std::string getErrorMessage(std::string &xml);
 
Status getStatus(const Swift::ParserElement::ref &element, const std::string xmlns);
 
User getUser(const Swift::ParserElement::ref &element, const std::string xmlns);
 
#endif
backends/twitter/libtwitcurl/twitcurl.cpp
Show inline comments
 
@@ -1472,6 +1472,9 @@ void twitCurl::prepareStandardParams()
 
    /* Restore any custom request we may have */
 
    curl_easy_setopt( m_curlHandle, CURLOPT_CUSTOMREQUEST, NULL );
 
 
	/* All supported encodings*/
 
    curl_easy_setopt( m_curlHandle, CURLOPT_ENCODING, "" );
 
 
    /* Clear callback and error buffers */
 
    clearCurlCallbackBuffers();
 
0 comments (0 inline, 0 general)