[SCM] ktp-common-internals packaging branch, master, updated. debian/15.12.1-2-1839-gf0635e9
Maximiliano Curia
maxy at moszumanska.debian.org
Mon May 9 09:04:57 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-common-internals.git;a=commitdiff;h=df6571f
The following commit has been merged in the master branch:
commit df6571f9d103e550c1962697282eb5b4144b597c
Author: David Edmundson <kde at davidedmundson.co.uk>
Date: Wed Feb 1 23:25:32 2012 +0000
Make message processor a proper singleton
---
KTp/message-processor.cpp | 17 +++++++++++++++--
KTp/message-processor.h | 12 ++++++++++--
2 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/KTp/message-processor.cpp b/KTp/message-processor.cpp
index 3bb0353..06857c3 100644
--- a/KTp/message-processor.cpp
+++ b/KTp/message-processor.cpp
@@ -20,15 +20,28 @@
#include "message-processor.h"
#include "filters.h"
-QList<AbstractMessageFilter*> MessageProcessor::m_filters;
+MessageProcessor* MessageProcessor::s_instance = 0;
AbstractMessageFilter::~AbstractMessageFilter()
{
+}
+MessageProcessor* MessageProcessor::instance()
+{
+ static QMutex mutex;
+ if (!s_instance)
+ {
+ mutex.lock();
+ if (!s_instance) {
+ s_instance = new MessageProcessor;
+ }
+ mutex.unlock();
+ }
+ return s_instance;
}
-MessageProcessor::MessageProcessor(QObject* parent): QObject(parent)
+MessageProcessor::MessageProcessor()
{
m_filters << new UrlFilter();
}
diff --git a/KTp/message-processor.h b/KTp/message-processor.h
index 50cacec..380a510 100644
--- a/KTp/message-processor.h
+++ b/KTp/message-processor.h
@@ -34,13 +34,21 @@ class MessageProcessor : public QObject
{
public:
- explicit MessageProcessor(QObject* parent = 0);
+ static MessageProcessor* instance();
+
~MessageProcessor();
//text-ui will call this somewhere in handleIncommingMessage just before displaying it
KTp::Message processIncommingMessage(Tp::ReceivedMessage);
+
+protected:
+ explicit MessageProcessor();
+
+
private:
- static QList<AbstractMessageFilter*> m_filters;
+ static MessageProcessor* s_instance;
+ QList<AbstractMessageFilter*> m_filters;
+
};
#endif // MESSAGE_PROCESSOR_H
--
ktp-common-internals packaging
More information about the pkg-kde-commits
mailing list