Пример #1
0
 QMessageFolderId stripIdPrefix(const QMessageFolderId& id)
 {
     if (id.toString().startsWith(freestylePrefix))
         return QMessageFolderId(id.toString().right(id.toString().length() - QString(freestylePrefix).length()));
     else if (id.toString().startsWith(mtmPrefix))
         return QMessageFolderId(id.toString().right(id.toString().length() - QString(mtmPrefix).length()));
     else
         return QMessageFolderId(id);
 }
Пример #2
0
 QMessageFolderId addIdPrefix(const QMessageFolderId& id, const EngineType& type)
 {
     switch (type) {
     case EngineTypeFreestyle:
         Q_ASSERT(!id.toString().startsWith(freestylePrefix));
         return QMessageFolderId(QString(freestylePrefix) + id.toString());
     case EngineTypeMTM:
         Q_ASSERT(!id.toString().startsWith(mtmPrefix));
         return QMessageFolderId(QString(mtmPrefix) + id.toString());
     default:
         return QMessageFolderId(id);
     }
 }
void tst_QMessageFilter::testParentFolderIdPreFilter()
{
    QMessageFilter filter = QMessageFilter::byParentFolderId(QMessageFolderId(email_prefix+"123"), QMessageDataComparator::Equal);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Email), true);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Sms), false);

    filter = QMessageFilter::byParentFolderId(QMessageFolderId(sms_prefix+"123"), QMessageDataComparator::Equal);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Sms), true);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Email), false);

    filter = QMessageFilter::byParentFolderId(QMessageFolderId(email_prefix+"123"), QMessageDataComparator::NotEqual);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Email), true);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Sms), true);

    filter = QMessageFilter::byParentFolderId(QMessageFolderId(sms_prefix+"123"), QMessageDataComparator::NotEqual);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Email), true);
    QCOMPARE(MessagingHelper::preFilter(filter, QMessage::Sms), true);
}
Пример #4
0
void QMessage::setType(Type t)
{
    d_ptr->_type = t;

    if ((t == QMessage::Sms) && !(d_ptr->_parentFolderId.isValid()))
        d_ptr->_parentFolderId = QMessageFolderId(FOLDER_ID_DRAFTS);

    d_ptr->_modified = true;
}
Пример #5
0
QMessageFolderId addFolder(const Parameters &params)
{
    QString path(params["path"]);
    QString name(params["name"]);
    QString parentAccountName(params["parentAccountName"]);
    QString parentFolderPath(params["parentFolderPath"]);

    if (!path.isEmpty() && !parentAccountName.isEmpty()) {
        // Find the named account
        QMailAccountIdList accountIds(QMailStore::instance()->queryAccounts(QMailAccountKey::name(parentAccountName)));
        if (accountIds.count() == 1) {
            QMailFolder folder;
            folder.setPath(path);
            folder.setParentAccountId(accountIds.first());

            if (!name.isEmpty()) {
                folder.setDisplayName(name);
            }

            if (!parentFolderPath.isEmpty()) {
                QMailFolderKey key(QMailFolderKey::path(parentFolderPath) & QMailFolderKey::parentAccountId(folder.parentAccountId()));
                QMailFolderIdList folderIds(QMailStore::instance()->queryFolders(key));
                if (folderIds.count() == 1) {
                    folder.setParentFolderId(folderIds.first());
                } else {
                    qWarning() << "Unable to locate parent folder:" << parentFolderPath;
                }
            }

            if (!QMailStore::instance()->addFolder(&folder)) {
                qWarning() << "Unable to addFolder:" << path;
            } else {
                return QmfHelpers::convert(folder.id());
            }
        } else {
            qWarning() << "Unable to locate parent account:" << parentAccountName;
        }
    }

    return QMessageFolderId();
}
Пример #6
0
QMessageFolderId convert(const QMailFolderId &id)
{
    return QMessageFolderId(prefixIdentifier(QString::number(id.toULongLong())));
}
Пример #7
0
QMessageFolderId addFolder(const Parameters &params)
{
    Q_UNUSED(params);
    return QMessageFolderId();
}