diff options
| author | Pekka Vuorela <pvuorela@iki.fi> | 2025-11-10 12:49:05 +0200 |
|---|---|---|
| committer | Pekka Vuorela <pvuorela@iki.fi> | 2025-11-12 13:10:12 +0200 |
| commit | ec2e17f3ccc122d6c47ca42c8c8c28bcb3952acd (patch) | |
| tree | ba14bb7e8bbe6814350bcfde4ad15882e940513f | |
| parent | cc3f1651da37aceb333dcd10817da06b3994cbda (diff) | |
Remove dead voice/video mail handling
Not much done here since the initial commit and the
QMailMessageClassifier::classifyMessage(QMailMessageMetaData*)
wasn't actually getting even called anywhere.
Besides if something like this is wanted in some environment, it's better
implemented as external messageserver plugin.
Change-Id: Iff3b9616a739345f6dc73f7b8160b83835ece13b
Reviewed-by: Pekka Vuorela <pvuorela@iki.fi>
Reviewed-by: <matti.viljanen@kapsi.fi>
Reviewed-by: Damien Caliste <dcaliste@free.fr>
| -rw-r--r-- | src/libraries/qmfmessageserver/qmailmessageclassifier.cpp | 62 | ||||
| -rw-r--r-- | src/libraries/qmfmessageserver/qmailmessageclassifier.h | 5 | ||||
| -rw-r--r-- | src/tools/messageserver/messageserver.cpp | 68 | ||||
| -rw-r--r-- | src/tools/messageserver/messageserver.h | 7 |
4 files changed, 1 insertions, 141 deletions
diff --git a/src/libraries/qmfmessageserver/qmailmessageclassifier.cpp b/src/libraries/qmfmessageserver/qmailmessageclassifier.cpp index 14c30b19..dccde183 100644 --- a/src/libraries/qmfmessageserver/qmailmessageclassifier.cpp +++ b/src/libraries/qmfmessageserver/qmailmessageclassifier.cpp @@ -33,8 +33,6 @@ #include "qmailmessageclassifier.h" #include <qmailmessage.h> -#include <QSettings> - /*! \class QMailMessageClassifier @@ -46,12 +44,6 @@ QMailMessageClassifier inspects a message to determine what type of content it contains, according to the classification of \l{QMailMessageMetaData::ContentType}{QMailMessage::ContentType}. - - Messages of type \l{QMailMessageMetaData::Email}{QMailMessage::Email} may be classified as having - \l{QMailMessageMetaData::VoicemailContent}{QMailMessage::VoicemailContent} or - \l{QMailMessageMetaData::VideomailContent}{QMailMessage::VideomailContent} content if their - \l{QMailMessage::from()} address matches any of those configured in the - \c{QtProject/messageserver.conf} file. */ /*! @@ -59,25 +51,6 @@ */ QMailMessageClassifier::QMailMessageClassifier() { - QSettings settings(QLatin1String("QtProject"), QLatin1String("messageserver")); - - settings.beginGroup(QLatin1String("global")); - - int count = settings.beginReadArray(QLatin1String("voicemail")); - for (int i = 0; i < count; ++i) { - settings.setArrayIndex(i); - voiceMailAddresses.append(settings.value(QLatin1String("address")).toString()); - } - settings.endArray(); - - count = settings.beginReadArray(QLatin1String("videomail")); - for (int i = 0; i < count; ++i) { - settings.setArrayIndex(i); - videoMailAddresses.append(settings.value(QLatin1String("address")).toString()); - } - settings.endArray(); - - settings.endGroup(); } /*! \internal */ @@ -109,41 +82,6 @@ static QMailMessage::ContentType fromContentType(const QMailMessageContentType& } /*! - Attempts to determine the type of content held within the message described by \a metaData, - if it is currently set to \l{QMailMessageMetaData::UnknownContent}{QMailMessageMetaData::UnknownContent}. - If the content type is determined, the message metadata record is updated and true is returned. - - \sa QMailMessageMetaData::setContent() -*/ -bool QMailMessageClassifier::classifyMessage(QMailMessageMetaData *metaData) -{ - if (metaData && metaData->content() == QMailMessage::UnknownContent) { - QMailMessage::ContentType content = QMailMessage::UnknownContent; - - switch (metaData->messageType()) { - case QMailMessage::Email: - // Handle voicemail emails, from pre-configured addresses - if (voiceMailAddresses.contains(metaData->from().address())) { - content = QMailMessage::VoicemailContent; - } else if (videoMailAddresses.contains(metaData->from().address())) { - content = QMailMessage::VideomailContent; - } - break; - - default: - break; - } - - if ((content != metaData->content()) && (content != QMailMessage::UnknownContent)) { - metaData->setContent(content); - return true; - } - } - - return false; -} - -/*! Attempts to determine the type of content held within the message \a message, if it is currently set to \l{QMailMessageMetaData::UnknownContent}{QMailMessageMetaData::UnknownContent}. If the content type is determined, the message record is updated and true is returned. diff --git a/src/libraries/qmfmessageserver/qmailmessageclassifier.h b/src/libraries/qmfmessageserver/qmailmessageclassifier.h index 485cc53a..c68a6034 100644 --- a/src/libraries/qmfmessageserver/qmailmessageclassifier.h +++ b/src/libraries/qmfmessageserver/qmailmessageclassifier.h @@ -46,12 +46,7 @@ public: QMailMessageClassifier(); ~QMailMessageClassifier(); - bool classifyMessage(QMailMessageMetaData *message); bool classifyMessage(QMailMessage *message); - -private: - QStringList voiceMailAddresses; - QStringList videoMailAddresses; }; #endif diff --git a/src/tools/messageserver/messageserver.cpp b/src/tools/messageserver/messageserver.cpp index 86710dd9..d5d5c8a9 100644 --- a/src/tools/messageserver/messageserver.cpp +++ b/src/tools/messageserver/messageserver.cpp @@ -69,8 +69,7 @@ int MessageServer::sigintFd[2]; MessageServer::MessageServer(QObject *parent) : QObject(parent), - handler(nullptr), - completionAttempted(false) + handler(nullptr) { readLogSettings(); } @@ -138,13 +137,6 @@ bool MessageServer::init() qCWarning(lcMessaging) << "Messaging DB Invalid: Messaging cannot operate due to database incompatibilty!"; // Do not close, however, or QPE will start another instance. return false; - } else { - connect(store, SIGNAL(messagesAdded(QMailMessageIdList)), - this, SLOT(messagesAdded(QMailMessageIdList))); - connect(store, SIGNAL(messagesUpdated(QMailMessageIdList)), - this, SLOT(messagesUpdated(QMailMessageIdList))); - connect(store, SIGNAL(messagesRemoved(QMailMessageIdList)), - this, SLOT(messagesRemoved(QMailMessageIdList))); } // Register our object on the session bus and expose interface to others. @@ -186,18 +178,6 @@ void MessageServer::retrievalCompleted(quint64 action) // Ensure the client receives any resulting events before a notification QMailStore::instance()->flushIpcNotifications(); - if (!completionList.isEmpty()) { - if (!completionAttempted) { - // Complete the messages that we selected for immediate completion - completionAttempted = true; - handler->retrieveMessages(action, completionList.values(), QMailRetrievalAction::Content); - return; - } else { - completionList.clear(); - } - } - - completionAttempted = false; emit handler->retrievalCompleted(action); } @@ -209,52 +189,6 @@ void MessageServer::transmissionCompleted(quint64 action) emit handler->transmissionCompleted(action); } -void MessageServer::messagesAdded(const QMailMessageIdList &ids) -{ - if (!QMailStore::instance()->asynchronousEmission()) { - // Added in our process - from retrieval - foreach (const QMailMessageId &id, ids) { - QMailMessageMetaData message(id); - - bool complete(false); - if (!(message.status() & QMailMessage::ContentAvailable)) { - // Automatically download voicemail messages - if (message.content() == QMailMessage::VoicemailContent - || message.content() == QMailMessage::VideomailContent) { - complete = true; - } - } - - if (complete) - completionList.insert(message.id()); - } - } -} - -void MessageServer::messagesUpdated(const QMailMessageIdList &ids) -{ - if (!QMailStore::instance()->asynchronousEmission()) { - // If we're updating, check whether the messages have been marked as Removed - foreach (const QMailMessageId &id, ids) { - if (completionList.contains(id)) { - QMailMessageMetaData message(id); - if ((message.status() & QMailMessage::ContentAvailable) || (message.status() & QMailMessage::Removed)) { - // This message has been completed (or removed) - completionList.remove(id); - } - } - } - } -} - -void MessageServer::messagesRemoved(const QMailMessageIdList &ids) -{ - foreach (const QMailMessageId &id, ids) { - // No need to complete deleted messages - completionList.remove(id); - } -} - void MessageServer::cleanupTemporaryMessages() { QMailStore::instance()->removeMessages(QMailMessageKey::status(QMailMessage::Temporary), QMailStore::NoRemovalRecord); diff --git a/src/tools/messageserver/messageserver.h b/src/tools/messageserver/messageserver.h index 8308973c..d21bd22b 100644 --- a/src/tools/messageserver/messageserver.h +++ b/src/tools/messageserver/messageserver.h @@ -76,10 +76,6 @@ private slots: void transmissionCompleted(quint64 action); - void messagesAdded(const QMailMessageIdList &ids); - void messagesUpdated(const QMailMessageIdList &ids); - void messagesRemoved(const QMailMessageIdList &ids); - void cleanupTemporaryMessages(); private: @@ -87,9 +83,6 @@ private: ServiceHandler *handler; - QSet<QMailMessageId> completionList; - bool completionAttempted; - #ifdef MESSAGESERVER_PLUGINS QList<QMailMessageServerService*> m_plugins; #endif |
