Search for usage in LXR

Akonadi::Server::ItemRetrievalManager Class Reference

#include <itemretrievalmanager.h>

Inherits Akonadi::Server::AkThread.


void requestAdded ()
void requestFinished (const Akonadi::Server::ItemRetrievalResult &result)

Public Member Functions

virtual void requestItemDelivery (ItemRetrievalRequest request)
void triggerCollectionSync (const QString &resource, qint64 colId)
void triggerCollectionTreeSync (const QString &resource)

Protected Member Functions

 ItemRetrievalManager (QObject *parent=nullptr)
 ItemRetrievalManager (std::unique_ptr< AbstractItemRetrievalJobFactory > factory, QObject *parent=nullptr)

Protected Attributes

QHash< QString, AbstractItemRetrievalJob * > mCurrentJobs
std::unique_ptr< AbstractItemRetrievalJobFactory > mJobFactory
QReadWriteLock mLock
std::unordered_map< QString, std::list< ItemRetrievalRequest > > mPendingRequests
std::unordered_map< QString, std::unique_ptr< OrgFreedesktopAkonadiResourceInterface > > mResourceInterfaces
QWaitCondition mWaitCondition

Detailed Description

Manages and processes item retrieval requests.

Definition at line 46 of file itemretrievalmanager.h.

Constructor & Destructor Documentation

◆ ItemRetrievalManager() [1/2]

ItemRetrievalManager::ItemRetrievalManager ( QObject * parent = nullptr)

Use AkThread::create() to create and start a new ItemRetrievalManager thread.

Definition at line 32 of file itemretrievalmanager.cpp.

◆ ItemRetrievalManager() [2/2]

ItemRetrievalManager::ItemRetrievalManager ( std::unique_ptr< AbstractItemRetrievalJobFactory > factory,
QObject * parent = nullptr )

Definition at line 37 of file itemretrievalmanager.cpp.

◆ ~ItemRetrievalManager()

ItemRetrievalManager::~ItemRetrievalManager ( )

Definition at line 45 of file itemretrievalmanager.cpp.

Member Function Documentation

◆ requestItemDelivery()

void ItemRetrievalManager::requestItemDelivery ( ItemRetrievalRequest request)

Added for convenience.

ItemRetrievalManager takes ownership over the pointer and deletes it when the request is processed.

Definition at line 102 of file itemretrievalmanager.cpp.

◆ triggerCollectionSync()

void ItemRetrievalManager::triggerCollectionSync ( const QString & resource,
qint64 colId )

Definition at line 208 of file itemretrievalmanager.cpp.

◆ triggerCollectionTreeSync()

void ItemRetrievalManager::triggerCollectionTreeSync ( const QString & resource)

Definition at line 217 of file itemretrievalmanager.cpp.

Member Data Documentation

◆ mCurrentJobs

QHash<QString, AbstractItemRetrievalJob *> Akonadi::Server::ItemRetrievalManager::mCurrentJobs

Currently running jobs, one per resource.

Definition at line 94 of file itemretrievalmanager.h.

◆ mJobFactory

std::unique_ptr<AbstractItemRetrievalJobFactory> Akonadi::Server::ItemRetrievalManager::mJobFactory

Definition at line 84 of file itemretrievalmanager.h.

◆ mLock

QReadWriteLock Akonadi::Server::ItemRetrievalManager::mLock

Protects mPendingRequests and every Request object posted to it.

Definition at line 87 of file itemretrievalmanager.h.

◆ mPendingRequests

std::unordered_map<QString, std::list<ItemRetrievalRequest> > Akonadi::Server::ItemRetrievalManager::mPendingRequests

Pending requests queues, one per resource.

Definition at line 92 of file itemretrievalmanager.h.

◆ mResourceInterfaces

std::unordered_map<QString, std::unique_ptr<OrgFreedesktopAkonadiResourceInterface> > Akonadi::Server::ItemRetrievalManager::mResourceInterfaces

Definition at line 97 of file itemretrievalmanager.h.

◆ mWaitCondition

QWaitCondition Akonadi::Server::ItemRetrievalManager::mWaitCondition

Used to let requesting threads wait until the request has been processed.

Definition at line 89 of file itemretrievalmanager.h.

The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri May 24 2024 11:58:19 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.