summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2009-11-08 16:12:48 (GMT)
committerRemko Tronçon <git@el-tramo.be>2009-11-08 18:32:15 (GMT)
commitf1d74218cb432513c376b46aa115acb3e107ed3a (patch)
tree24df6a3233f1fd3c2c2592637cfcfd1846040dee /Swiften/Client/Client.cpp
parentb6003bea740e8898127ec135e230eed421924370 (diff)
downloadswift-f1d74218cb432513c376b46aa115acb3e107ed3a.zip
swift-f1d74218cb432513c376b46aa115acb3e107ed3a.tar.bz2
Added Error class.
Diffstat (limited to 'Swiften/Client/Client.cpp')
-rw-r--r--Swiften/Client/Client.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/Swiften/Client/Client.cpp b/Swiften/Client/Client.cpp
index 60dfade..b3bea0d 100644
--- a/Swiften/Client/Client.cpp
+++ b/Swiften/Client/Client.cpp
@@ -7,12 +7,13 @@
#include "Swiften/Network/BoostIOServiceThread.h"
#include "Swiften/Client/ClientSession.h"
#include "Swiften/StreamStack/PlatformTLSLayerFactory.h"
#include "Swiften/Network/BoostConnectionFactory.h"
#include "Swiften/Network/DomainNameResolveException.h"
#include "Swiften/TLS/PKCS12Certificate.h"
+#include "Swiften/Session/BasicSessionStream.h"
namespace Swift {
Client::Client(const JID& jid, const String& password) :
IQRouter(this), jid_(jid), password_(password) {
connectionFactory_ = new BoostConnectionFactory(&MainBoostIOServiceThread::getInstance().getIOService());
@@ -43,12 +44,16 @@ void Client::connect() {
void Client::handleConnectionConnectFinished(bool error) {
if (error) {
onError(ClientError::ConnectionError);
}
else {
+ assert(!sessionStream_);
+ sessionStream_ = boost::shared_ptr<BasicSessionStream>(new BasicSessionStream(connection_, &payloadParserFactories_, &payloadSerializers_, tlsLayerFactory_));
+ sessionStream_->initialize();
+
session_ = boost::shared_ptr<ClientSession>(new ClientSession(jid_, connection_, tlsLayerFactory_, &payloadParserFactories_, &payloadSerializers_));
if (!certificate_.isEmpty()) {
session_->setCertificate(PKCS12Certificate(certificate_, password_));
}
session_->onSessionStarted.connect(boost::bind(boost::ref(onConnected)));
session_->onSessionFinished.connect(boost::bind(&Client::handleSessionFinished, this, _1));