diff options
| author | Valerio Valerio <valerio.valerio@jollamobile.com> | 2013-06-17 16:15:44 +0300 |
|---|---|---|
| committer | Robin Burchell <robin+qt@viroteck.net> | 2013-06-24 12:47:33 +0200 |
| commit | 95c51a3e3e8b23d7d4917ea1a35db16785525aeb (patch) | |
| tree | b3f5c26830bf41a921650d9ad6add78a8d4557e6 /src/tools/messageserver/messageserver.cpp | |
| parent | 696f60b3b3e13a244cb1ae91e836e4db6c766b21 (diff) | |
Introduce messageserver plugins.4.0.2
MessageServer plugins will be loaded and executed in the messageserver main loop,
these plugins should only be used for services that need to know information
about the operations initiated by all clients connected to messageserver.
To make use of this functionality qmf should be compiled with 'DEFINES+=MESSAGESERVER_PLUGINS'.
Change-Id: I6bebb150645d2c70a5bc67ffcaaa904f94ed3705
Signed-off-by: Valerio Valerio <valerio.valerio@jollamobile.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Diffstat (limited to 'src/tools/messageserver/messageserver.cpp')
| -rw-r--r-- | src/tools/messageserver/messageserver.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/tools/messageserver/messageserver.cpp b/src/tools/messageserver/messageserver.cpp index da2b47dd..43a61d66 100644 --- a/src/tools/messageserver/messageserver.cpp +++ b/src/tools/messageserver/messageserver.cpp @@ -51,6 +51,7 @@ #include <qmailipc.h> #include <newcountnotifier.h> #include <qcopserver.h> +#include <qmailmessageserverplugin.h> extern "C" { #ifndef Q_OS_WIN @@ -59,6 +60,10 @@ extern "C" { #include <signal.h> } +#ifdef MESSAGESERVER_PLUGINS +#include "messageserverplugins.h" +#endif + #if defined(Q_OS_UNIX) int MessageServer::sighupFd[2]; #endif @@ -252,6 +257,16 @@ MessageServer::MessageServer(QObject *parent) emit client->actionsListed(QMailActionDataList()); } + +#ifdef MESSAGESERVER_PLUGINS + qMailLog(Messaging) << "Initiating messageserver plugins."; + QStringList availablePlugins = QMailMessageServerPluginFactory::keys(); + + for (int i = 0; i < availablePlugins.size(); i++) { + QMailMessageServerPlugin *plugin = QMailMessageServerPluginFactory::createService(availablePlugins.at(i)); + plugin->exec(); + } +#endif } MessageServer::~MessageServer() |
