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;
75 class AKONADI_EXPORT
Monitor :
public QObject
94 explicit Monitor( QObject *parent = 0 );
116 void setCollectionMonitored(
const Collection &collection,
bool monitored =
true );
127 void setItemMonitored(
const Item &item,
bool monitored =
true );
140 void setResourceMonitored(
const QByteArray &resource,
bool monitored =
true );
155 void setMimeTypeMonitored(
const QString &mimetype,
bool monitored =
true );
166 void setTagMonitored(
const Tag &tag,
bool monitored =
true );
178 void setTypeMonitored( Type type,
bool monitored =
true );
186 void setAllMonitored(
bool monitored =
true );
194 void ignoreSession(
Session *session );
201 void fetchCollection(
bool enable );
209 void fetchCollectionStatistics(
bool enable );
247 void fetchChangedOnly(
bool enable );
329 AKONADI_DEPRECATED QList<Item::Id> itemsMonitored()
const;
338 QVector<Item::Id> itemsMonitoredEx()
const;
345 QStringList mimeTypesMonitored()
const;
352 QVector<Tag::Id> tagsMonitored()
const;
359 QVector<Type> typesMonitored()
const;
366 QList<QByteArray> resourcesMonitored()
const;
373 bool isAllMonitored()
const;
397 void setCollectionMoveTranslationEnabled(
bool enabled );
406 void itemChanged(
const Akonadi::Item &item,
const QSet<QByteArray> &partIdentifiers );
416 void itemsFlagsChanged(
const Akonadi::Item::List &items,
const QSet<QByteArray> &addedFlags,
417 const QSet<QByteArray> &removedFlags );
427 void itemsTagsChanged(
const Akonadi::Item::List &items,
const QSet<Akonadi::Tag> &addedTags,
428 const QSet<Akonadi::Tag> &removedTags );
449 void itemsMoved(
const Akonadi::Item::List &items,
const Akonadi::Collection &collectionSource,
468 void itemRemoved(
const Akonadi::Item &item );
478 void itemsRemoved(
const Akonadi::Item::List &items );
497 void itemsLinked(
const Akonadi::Item::List &items,
const Akonadi::Collection &collection );
516 void itemsUnlinked(
const Akonadi::Item::List &items,
const Akonadi::Collection &collection );
541 void collectionChanged(
const Akonadi::Collection &collection,
const QSet<QByteArray> &attributeNames );
637 void itemMonitored(
const Akonadi::Item &item,
bool monitored );
646 void resourceMonitored(
const QByteArray &identifier,
bool monitored );
655 void mimeTypeMonitored(
const QString &mimeType,
bool monitored );
663 void allMonitored(
bool monitored );
671 void tagMonitored(
const Akonadi::Tag &tag,
bool monitored );
693 Q_PRIVATE_SLOT( d_ptr,
void slotSessionDestroyed( QObject* ) )
694 Q_PRIVATE_SLOT( d_ptr,
void slotStatisticsChangedFinished( KJob* ) )
695 Q_PRIVATE_SLOT( d_ptr,
void slotFlushRecentlyChangedCollections() )
696 Q_PRIVATE_SLOT( d_ptr,
void slotNotify( const Akonadi::NotificationMessageV3::List& ) )
697 Q_PRIVATE_SLOT( d_ptr,
void dataAvailable() )
698 Q_PRIVATE_SLOT( d_ptr,
void serverStateChanged( Akonadi::
ServerManager::State ) )
699 Q_PRIVATE_SLOT( d_ptr,
void invalidateCollectionCache( qint64 ) )
700 Q_PRIVATE_SLOT( d_ptr,
void invalidateItemCache( qint64 ) )
701 Q_PRIVATE_SLOT( d_ptr,
void invalidateTagCache( qint64 ) )
703 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.