20 #ifndef AKONADI_MONITOR_H
21 #define AKONADI_MONITOR_H
23 #include <akonadi/collection.h>
24 #include <akonadi/item.h>
26 #include <QtCore/QObject>
30 class CollectionFetchScope;
31 class CollectionStatistics;
72 class AKONADI_EXPORT
Monitor :
public QObject
82 explicit Monitor( QObject *parent = 0 );
104 void setCollectionMonitored(
const Collection &collection,
bool monitored =
true );
115 void setItemMonitored(
const Item &item,
bool monitored =
true );
128 void setResourceMonitored(
const QByteArray &resource,
bool monitored =
true );
143 void setMimeTypeMonitored(
const QString &mimetype,
bool monitored =
true );
151 void setAllMonitored(
bool monitored =
true );
159 void ignoreSession(
Session *session );
166 void fetchCollection(
bool enable );
174 void fetchCollectionStatistics(
bool enable );
213 void fetchChangedOnly(
bool enable );
271 KDE_DEPRECATED QList<Item::Id> itemsMonitored()
const;
280 QVector<Item::Id> itemsMonitoredEx()
const;
287 QStringList mimeTypesMonitored()
const;
294 QList<QByteArray> resourcesMonitored()
const;
301 bool isAllMonitored()
const;
309 void setSession( Akonadi::Session *session );
325 void setCollectionMoveTranslationEnabled(
bool enabled );
334 void itemChanged(
const Akonadi::Item &item,
const QSet<QByteArray> &partIdentifiers );
343 void itemMoved(
const Akonadi::Item &item,
const Akonadi::Collection &collectionSource,
344 const Akonadi::Collection &collectionDestination );
352 void itemAdded(
const Akonadi::Item &item,
const Akonadi::Collection &collection );
362 void itemRemoved(
const Akonadi::Item &item );
371 void itemLinked(
const Akonadi::Item &item,
const Akonadi::Collection &collection );
380 void itemUnlinked(
const Akonadi::Item &item,
const Akonadi::Collection &collection );
388 void collectionAdded(
const Akonadi::Collection &collection,
const Akonadi::Collection &parent );
395 void collectionChanged(
const Akonadi::Collection &collection );
405 void collectionChanged(
const Akonadi::Collection &collection,
const QSet<QByteArray> &attributeNames );
416 void collectionMoved(
const Akonadi::Collection &collection,
const Akonadi::Collection &source,
const Akonadi::Collection &destination );
423 void collectionRemoved(
const Akonadi::Collection &collection );
435 void collectionSubscribed(
const Akonadi::Collection& collection,
const Akonadi::Collection &parent );
444 void collectionUnsubscribed(
const Akonadi::Collection& collection );
454 void collectionStatisticsChanged( Akonadi::Collection::Id
id,
455 const Akonadi::CollectionStatistics &statistics );
464 void collectionMonitored(
const Akonadi::Collection &collection,
bool monitored );
473 void itemMonitored(
const Akonadi::Item &item,
bool monitored );
482 void resourceMonitored(
const QByteArray &identifier,
bool monitored );
491 void mimeTypeMonitored(
const QString &mimeType,
bool monitored );
499 void allMonitored(
bool monitored );
513 Q_PRIVATE_SLOT( d_ptr,
void slotSessionDestroyed( QObject* ) )
514 Q_PRIVATE_SLOT( d_ptr,
void slotStatisticsChangedFinished( KJob* ) )
515 Q_PRIVATE_SLOT( d_ptr,
void slotFlushRecentlyChangedCollections() )
516 Q_PRIVATE_SLOT( d_ptr,
void slotNotify(
const Akonadi::NotificationMessage::List& ) )
517 Q_PRIVATE_SLOT( d_ptr,
void dataAvailable() )
518 Q_PRIVATE_SLOT( d_ptr,
void serverStateChanged( Akonadi::ServerManager::State ) )
519 Q_PRIVATE_SLOT( d_ptr,
void invalidateCollectionCache( qint64 ) )
520 Q_PRIVATE_SLOT( d_ptr,
void invalidateItemCache( qint64 ) )
522 friend class ResourceBasePrivate;