summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/PubSub')
-rw-r--r--Swiften/PubSub/PubSubManager.h56
-rw-r--r--Swiften/PubSub/PubSubManagerImpl.cpp20
-rw-r--r--Swiften/PubSub/PubSubManagerImpl.h45
-rw-r--r--Swiften/PubSub/PubSubUtil.h37
4 files changed, 78 insertions, 80 deletions
diff --git a/Swiften/PubSub/PubSubManager.h b/Swiften/PubSub/PubSubManager.h
index 7fc3820..eba5dd9 100644
--- a/Swiften/PubSub/PubSubManager.h
+++ b/Swiften/PubSub/PubSubManager.h
@@ -1,53 +1,53 @@
/*
- * Copyright (c) 2013 Isode Limited.
+ * Copyright (c) 2013-2016 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
-#include <boost/shared_ptr.hpp>
+#include <memory>
+
+#include <boost/signals2.hpp>
-#include <Swiften/Base/Override.h>
#include <Swiften/Base/API.h>
-#include <Swiften/Base/boost_bsignals.h>
-#include <Swiften/Queries/PubSubRequest.h>
-#include <Swiften/PubSub/PubSubUtil.h>
+#include <Swiften/Base/Override.h>
+#include <Swiften/Elements/IQ.h>
#include <Swiften/Elements/PubSub.h>
-#include <Swiften/Elements/PubSubOwnerPubSub.h>
-#include <Swiften/Elements/PubSubCreate.h>
-#include <Swiften/Elements/PubSubSubscribe.h>
#include <Swiften/Elements/PubSubAffiliations.h>
+#include <Swiften/Elements/PubSubCreate.h>
#include <Swiften/Elements/PubSubDefault.h>
+#include <Swiften/Elements/PubSubEventPayload.h>
#include <Swiften/Elements/PubSubItems.h>
-#include <Swiften/Elements/PubSubPublish.h>
-#include <Swiften/Elements/PubSubRetract.h>
-#include <Swiften/Elements/PubSubSubscription.h>
-#include <Swiften/Elements/PubSubSubscriptions.h>
-#include <Swiften/Elements/PubSubUnsubscribe.h>
#include <Swiften/Elements/PubSubOwnerAffiliations.h>
#include <Swiften/Elements/PubSubOwnerConfigure.h>
#include <Swiften/Elements/PubSubOwnerDefault.h>
#include <Swiften/Elements/PubSubOwnerDelete.h>
+#include <Swiften/Elements/PubSubOwnerPubSub.h>
#include <Swiften/Elements/PubSubOwnerPurge.h>
#include <Swiften/Elements/PubSubOwnerSubscriptions.h>
-#include <Swiften/Elements/IQ.h>
-#include <Swiften/Elements/PubSubEventPayload.h>
-
+#include <Swiften/Elements/PubSubPublish.h>
+#include <Swiften/Elements/PubSubRetract.h>
+#include <Swiften/Elements/PubSubSubscribe.h>
+#include <Swiften/Elements/PubSubSubscription.h>
+#include <Swiften/Elements/PubSubSubscriptions.h>
+#include <Swiften/Elements/PubSubUnsubscribe.h>
+#include <Swiften/PubSub/PubSubUtil.h>
+#include <Swiften/Queries/PubSubRequest.h>
#define SWIFTEN_PUBSUBMANAGER_DECLARE_CREATE_REQUEST(payload, container, response) \
- virtual boost::shared_ptr< PubSubRequest<payload> > \
- createRequest(IQ::Type, const JID&, boost::shared_ptr<payload>) = 0;
+ virtual std::shared_ptr< PubSubRequest<payload> > \
+ createRequest(IQ::Type, const JID&, std::shared_ptr<payload>) = 0;
namespace Swift {
- class JID;
+ class JID;
+
+ class SWIFTEN_API PubSubManager {
+ public:
+ virtual ~PubSubManager();
- class SWIFTEN_API PubSubManager {
- public:
- virtual ~PubSubManager();
-
- SWIFTEN_PUBSUB_FOREACH_PUBSUB_PAYLOAD_TYPE(
- SWIFTEN_PUBSUBMANAGER_DECLARE_CREATE_REQUEST)
+ SWIFTEN_PUBSUB_FOREACH_PUBSUB_PAYLOAD_TYPE(
+ SWIFTEN_PUBSUBMANAGER_DECLARE_CREATE_REQUEST)
- boost::signal<void (const JID&, const boost::shared_ptr<PubSubEventPayload>)> onEvent;
- };
+ boost::signals2::signal<void (const JID&, const std::shared_ptr<PubSubEventPayload>)> onEvent;
+ };
}
diff --git a/Swiften/PubSub/PubSubManagerImpl.cpp b/Swiften/PubSub/PubSubManagerImpl.cpp
index 7e73b86..12eb25c 100644
--- a/Swiften/PubSub/PubSubManagerImpl.cpp
+++ b/Swiften/PubSub/PubSubManagerImpl.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013 Isode Limited.
+ * Copyright (c) 2013-2016 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
@@ -14,18 +14,18 @@
using namespace Swift;
-PubSubManagerImpl::PubSubManagerImpl(StanzaChannel* stanzaChannel, IQRouter* router) :
- stanzaChannel(stanzaChannel),
- router(router) {
- stanzaChannel->onMessageReceived.connect(boost::bind(&PubSubManagerImpl::handleMessageRecevied, this, _1));
+PubSubManagerImpl::PubSubManagerImpl(StanzaChannel* stanzaChannel, IQRouter* router) :
+ stanzaChannel(stanzaChannel),
+ router(router) {
+ stanzaChannel->onMessageReceived.connect(boost::bind(&PubSubManagerImpl::handleMessageRecevied, this, _1));
}
PubSubManagerImpl::~PubSubManagerImpl() {
- stanzaChannel->onMessageReceived.disconnect(boost::bind(&PubSubManagerImpl::handleMessageRecevied, this, _1));
+ stanzaChannel->onMessageReceived.disconnect(boost::bind(&PubSubManagerImpl::handleMessageRecevied, this, _1));
}
-void PubSubManagerImpl::handleMessageRecevied(boost::shared_ptr<Message> message) {
- if (boost::shared_ptr<PubSubEvent> event = message->getPayload<PubSubEvent>()) {
- onEvent(message->getFrom(), event->getPayload());
- }
+void PubSubManagerImpl::handleMessageRecevied(std::shared_ptr<Message> message) {
+ if (std::shared_ptr<PubSubEvent> event = message->getPayload<PubSubEvent>()) {
+ onEvent(message->getFrom(), event->getPayload());
+ }
}
diff --git a/Swiften/PubSub/PubSubManagerImpl.h b/Swiften/PubSub/PubSubManagerImpl.h
index d746aae..58c5fc0 100644
--- a/Swiften/PubSub/PubSubManagerImpl.h
+++ b/Swiften/PubSub/PubSubManagerImpl.h
@@ -1,41 +1,40 @@
/*
- * Copyright (c) 2013 Isode Limited.
+ * Copyright (c) 2013-2016 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
-#include <boost/smart_ptr/make_shared.hpp>
+#include <memory>
-#include <Swiften/Base/Override.h>
#include <Swiften/Base/API.h>
+#include <Swiften/Base/Override.h>
#include <Swiften/PubSub/PubSubManager.h>
-
#define SWIFTEN_PUBSUBMANAGERIMPL_DECLARE_CREATE_REQUEST(payload, container, response) \
- virtual boost::shared_ptr< PubSubRequest<payload> > \
- createRequest(IQ::Type type, const JID& receiver, boost::shared_ptr<payload> p) SWIFTEN_OVERRIDE { \
- return boost::make_shared< PubSubRequest<payload> >(type, receiver, p, router); \
- }
+ virtual std::shared_ptr< PubSubRequest<payload> > \
+ createRequest(IQ::Type type, const JID& receiver, std::shared_ptr<payload> p) SWIFTEN_OVERRIDE { \
+ return std::make_shared< PubSubRequest<payload> >(type, receiver, p, router); \
+ }
namespace Swift {
- class JID;
- class StanzaChannel;
- class Message;
+ class JID;
+ class StanzaChannel;
+ class Message;
- class SWIFTEN_API PubSubManagerImpl : public PubSubManager {
- public:
- PubSubManagerImpl(StanzaChannel* stanzaChannel, IQRouter* router);
- virtual ~PubSubManagerImpl();
+ class SWIFTEN_API PubSubManagerImpl : public PubSubManager {
+ public:
+ PubSubManagerImpl(StanzaChannel* stanzaChannel, IQRouter* router);
+ virtual ~PubSubManagerImpl();
- SWIFTEN_PUBSUB_FOREACH_PUBSUB_PAYLOAD_TYPE(
- SWIFTEN_PUBSUBMANAGERIMPL_DECLARE_CREATE_REQUEST)
+ SWIFTEN_PUBSUB_FOREACH_PUBSUB_PAYLOAD_TYPE(
+ SWIFTEN_PUBSUBMANAGERIMPL_DECLARE_CREATE_REQUEST)
- private:
- void handleMessageRecevied(boost::shared_ptr<Message>);
+ private:
+ void handleMessageRecevied(std::shared_ptr<Message>);
- private:
- StanzaChannel* stanzaChannel;
- IQRouter* router;
- };
+ private:
+ StanzaChannel* stanzaChannel;
+ IQRouter* router;
+ };
}
diff --git a/Swiften/PubSub/PubSubUtil.h b/Swiften/PubSub/PubSubUtil.h
index 7cc5a61..ac23092 100644
--- a/Swiften/PubSub/PubSubUtil.h
+++ b/Swiften/PubSub/PubSubUtil.h
@@ -1,27 +1,26 @@
/*
- * Copyright (c) 2013 Isode Limited.
+ * Copyright (c) 2013-2016 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
-
#define SWIFTEN_PUBSUB_FOREACH_PUBSUB_PAYLOAD_TYPE(action) \
- action(PubSubCreate, PubSub, PubSubCreate) \
- action(PubSubAffiliations, PubSub, PubSubAffiliations) \
- action(PubSubDefault, PubSub, PubSubDefault) \
- action(PubSubItems, PubSub, PubSubItems) \
- action(PubSubOptions, PubSub, PubSubOptions) \
- action(PubSubPublish, PubSub, PubSubPublish) \
- action(PubSubRetract, PubSub, PubSubRetract) \
- action(PubSubSubscription, PubSub, PubSubSubscription) \
- action(PubSubSubscriptions, PubSub, PubSubSubscriptions) \
- action(PubSubSubscribe, PubSub, PubSubSubscription) \
- action(PubSubUnsubscribe, PubSub, PubSubUnsubscribe) \
- action(PubSubOwnerAffiliations, PubSubOwnerPubSub, PubSubOwnerAffiliations) \
- action(PubSubOwnerConfigure, PubSubOwnerPubSub, PubSubOwnerConfigure) \
- action(PubSubOwnerDefault, PubSubOwnerPubSub, PubSubOwnerDefault) \
- action(PubSubOwnerDelete, PubSubOwnerPubSub, PubSubOwnerDelete) \
- action(PubSubOwnerPurge, PubSubOwnerPubSub, PubSubOwnerPurge) \
- action(PubSubOwnerSubscriptions, PubSubOwnerPubSub, PubSubOwnerSubscriptions)
+ action(PubSubCreate, PubSub, PubSubCreate) \
+ action(PubSubAffiliations, PubSub, PubSubAffiliations) \
+ action(PubSubDefault, PubSub, PubSubDefault) \
+ action(PubSubItems, PubSub, PubSubItems) \
+ action(PubSubOptions, PubSub, PubSubOptions) \
+ action(PubSubPublish, PubSub, PubSubPublish) \
+ action(PubSubRetract, PubSub, PubSubRetract) \
+ action(PubSubSubscription, PubSub, PubSubSubscription) \
+ action(PubSubSubscriptions, PubSub, PubSubSubscriptions) \
+ action(PubSubSubscribe, PubSub, PubSubSubscription) \
+ action(PubSubUnsubscribe, PubSub, PubSubUnsubscribe) \
+ action(PubSubOwnerAffiliations, PubSubOwnerPubSub, PubSubOwnerAffiliations) \
+ action(PubSubOwnerConfigure, PubSubOwnerPubSub, PubSubOwnerConfigure) \
+ action(PubSubOwnerDefault, PubSubOwnerPubSub, PubSubOwnerDefault) \
+ action(PubSubOwnerDelete, PubSubOwnerPubSub, PubSubOwnerDelete) \
+ action(PubSubOwnerPurge, PubSubOwnerPubSub, PubSubOwnerPurge) \
+ action(PubSubOwnerSubscriptions, PubSubOwnerPubSub, PubSubOwnerSubscriptions)