Changeset - 64536009a864
[Not reviewed]
0 4 0
HanzZ - 14 years ago 2011-04-10 19:38:42
hanzz.k@gmail.com
Store buddies in DB
4 files changed with 6 insertions and 3 deletions:
0 comments (0 inline, 0 general)
spectrum/src/sample.cfg
Show inline comments
 
[service]
 
jid = icq.localhost
 
password = secret
 
server = 127.0.0.1
 
port = 8888
 
port = 5222
 
protocol=prpl-jabber
 
server_mode=1
 

	
 
[database]
 
database = test.sql
 
prefix=icq
src/rosterstorage.cpp
Show inline comments
 
@@ -75,12 +75,13 @@ namespace Transport {
 
// }
 

	
 
RosterStorage::RosterStorage(User *user, StorageBackend *storageBackend) {
 
	m_user = user;
 
	m_storageBackend = storageBackend;
 
	m_storageTimer = m_user->getComponent()->getFactories()->getTimerFactory()->createTimer(5000);
 
	m_storageTimer->onTick.connect(boost::bind(&RosterStorage::storeBuddies, this));
 
}
 

	
 
RosterStorage::~RosterStorage() {
 
	m_storageTimer->stop();
 
}
 

	
src/user.cpp
Show inline comments
 
@@ -114,15 +114,15 @@ void User::handleDisconnected(const std::string &error) {
 

	
 
	boost::shared_ptr<Swift::Message> msg(new Swift::Message());
 
	msg->setBody(error);
 
	msg->setTo(m_jid.toBare());
 
	msg->setFrom(m_component->getJID());
 
	m_component->getStanzaChannel()->sendMessage(msg);
 

	
 
	std::cout << "aaaaaa\n";
 
	if (m_component->inServerMode()) {
 
		dynamic_cast<Swift::ServerStanzaChannel *>(m_component->getStanzaChannel())->finishSession(m_jid, boost::shared_ptr<Swift::Element>(new Swift::StreamError()));
 
// 		dynamic_cast<Swift::ServerStanzaChannel *>(m_component->getStanzaChannel())->finishSession(m_jid, boost::shared_ptr<Swift::Element>(new Swift::StreamError()));
 
	}
 

	
 
	m_userManager->removeUser(this);
 
}
 

	
 
}
src/usermanager.cpp
Show inline comments
 
@@ -20,12 +20,13 @@
 

	
 
#include "transport/usermanager.h"
 
#include "transport/user.h"
 
#include "transport/transport.h"
 
#include "transport/storagebackend.h"
 
#include "transport/conversationmanager.h"
 
#include "transport/rostermanager.h"
 

	
 
namespace Transport {
 

	
 
UserManager::UserManager(Component *component, StorageBackend *storageBackend) {
 
	m_cachedUser = NULL;
 
	m_onlineBuddies = 0;
 
@@ -122,12 +123,13 @@ void UserManager::handlePresence(Swift::Presence::ref presence) {
 
// // 				Log(presence->getFrom().toString().getUTF8String(), "This user is not VIP, can't login...");
 
// // 				return;
 
// // 			}
 
// // 
 
// // 
 
				user = new User(presence->getFrom(), res, m_component, this);
 
				user->getRosterManager()->setStorageBackend(m_storageBackend);
 
				// TODO: handle features somehow
 
// // 			user->setFeatures(isVip ? CONFIG().VIPFeatures : CONFIG().transportFeatures);
 
// // // 				if (c != NULL)
 
// // // 					if (Transport::instance()->hasClientCapabilities(c->findAttribute("ver")))
 
// // // 						user->setResource(stanza.from().resource(), stanza.priority(), Transport::instance()->getCapabilities(c->findAttribute("ver")));
 
// // // 
0 comments (0 inline, 0 general)