20 #ifndef AKONADI_MONITOR_H
21 #define AKONADI_MONITOR_H
23 #include <akonadi/tag.h>
24 #include <akonadi/collection.h>
25 #include <akonadi/item.h>
27 #include <QtCore/QObject>
31 class CollectionFetchScope;
32 class CollectionStatistics;
74 class AKONADI_EXPORT
Monitor :
public QObject
93 explicit Monitor(QObject *parent = 0);
115 void setCollectionMonitored(
const Collection &collection,
bool monitored =
true);
126 void setItemMonitored(
const Item &item,
bool monitored =
true);
139 void setResourceMonitored(
const QByteArray &resource,
bool monitored =
true);
154 void setMimeTypeMonitored(
const QString &mimetype,
bool monitored =
true);
165 void setTagMonitored(
const Tag &tag,
bool monitored =
true);
177 void setTypeMonitored(Type type,
bool monitored =
true);
185 void setAllMonitored(
bool monitored =
true);
193 void ignoreSession(
Session *session);
200 void fetchCollection(
bool enable);
208 void fetchCollectionStatistics(
bool enable);
246 void fetchChangedOnly(
bool enable);
328 AKONADI_DEPRECATED QList<Item::Id> itemsMonitored()
const;
337 QVector<Item::Id> itemsMonitoredEx()
const;
344 int numItemsMonitored()
const;
351 QStringList mimeTypesMonitored()
const;
358 int numMimeTypesMonitored()
const;
365 QVector<Tag::Id> tagsMonitored()
const;
372 QVector<Type> typesMonitored()
const;
379 QList<QByteArray> resourcesMonitored()
const;
386 int numResourcesMonitored()
const;
393 bool isAllMonitored()
const;
417 void setCollectionMoveTranslationEnabled(
bool enabled);
426 void itemChanged(
const Akonadi::Item &item,
const QSet<QByteArray> &partIdentifiers);
436 void itemsFlagsChanged(
const Akonadi::Item::List &items,
const QSet<QByteArray> &addedFlags,
437 const QSet<QByteArray> &removedFlags);
447 void itemsTagsChanged(
const Akonadi::Item::List &items,
const QSet<Akonadi::Tag> &addedTags,
448 const QSet<Akonadi::Tag> &removedTags);
469 void itemsMoved(
const Akonadi::Item::List &items,
const Akonadi::Collection &collectionSource,
488 void itemRemoved(
const Akonadi::Item &item);
498 void itemsRemoved(
const Akonadi::Item::List &items);
536 void itemsUnlinked(
const Akonadi::Item::List &items,
const Akonadi::Collection &collection);
561 void collectionChanged(
const Akonadi::Collection &collection,
const QSet<QByteArray> &attributeNames);
656 void itemMonitored(
const Akonadi::Item &item,
bool monitored);
665 void resourceMonitored(
const QByteArray &identifier,
bool monitored);
674 void mimeTypeMonitored(
const QString &mimeType,
bool monitored);
682 void allMonitored(
bool monitored);
690 void tagMonitored(
const Akonadi::Tag &tag,
bool monitored);
712 Q_PRIVATE_SLOT(d_ptr,
void slotSessionDestroyed(QObject *))
713 Q_PRIVATE_SLOT(d_ptr,
void slotStatisticsChangedFinished(KJob *))
714 Q_PRIVATE_SLOT(d_ptr,
void slotFlushRecentlyChangedCollections())
715 Q_PRIVATE_SLOT(d_ptr,
void slotNotify(const Akonadi::NotificationMessageV3::List &))
716 Q_PRIVATE_SLOT(d_ptr,
void dataAvailable())
717 Q_PRIVATE_SLOT(d_ptr,
void serverStateChanged(Akonadi::
ServerManager::State))
718 Q_PRIVATE_SLOT(d_ptr,
void invalidateCollectionCache(qint64))
719 Q_PRIVATE_SLOT(d_ptr,
void invalidateItemCache(qint64))
720 Q_PRIVATE_SLOT(d_ptr,
void invalidateTagCache(qint64))
722 friend class ResourceBasePrivate;
Provides statistics information of a Collection.
Specifies which parts of a collection should be fetched from the Akonadi storage. ...
Specifies which parts of a tag should be fetched from the Akonadi storage.
Represents a collection of PIM items.
qint64 Id
Describes the unique id type.
Provides methods to control the Akonadi server process.
A communication session with the Akonadi storage.
Specifies which parts of an item should be fetched from the Akonadi storage.
Monitors an item or collection for changes.
A model for collections and items together.
QList< Collection > List
Describes a list of collections.