Akonadi::ItemSearchJob
#include <itemsearchjob.h>
Signals | |
void | itemsReceived (const Akonadi::Item::List &items) |
Signals inherited from Akonadi::Job | |
void | aboutToStart (Akonadi::Job *job) |
void | writeFinished (Akonadi::Job *job) |
Signals inherited from KJob | |
void | description (KJob *job, const QString &title, const QPair< QString, QString > &field1=QPair< QString, QString >(), const QPair< QString, QString > &field2=QPair< QString, QString >()) |
void | finished (KJob *job) |
void | infoMessage (KJob *job, const QString &message) |
void | percentChanged (KJob *job, unsigned long percent) |
void | processedAmountChanged (KJob *job, KJob::Unit unit, qulonglong amount) |
void | processedSize (KJob *job, qulonglong size) |
void | result (KJob *job) |
void | resumed (KJob *job) |
void | speed (KJob *job, unsigned long speed) |
void | suspended (KJob *job) |
void | totalAmountChanged (KJob *job, KJob::Unit unit, qulonglong amount) |
void | totalSize (KJob *job, qulonglong size) |
void | warning (KJob *job, const QString &message) |
Public Member Functions | |
ItemSearchJob (const SearchQuery &query, QObject *parent=nullptr) | |
ItemSearchJob (QObject *parent=nullptr) | |
~ItemSearchJob () override | |
ItemFetchScope & | fetchScope () |
bool | isRecursive () const |
bool | isRemoteSearchEnabled () const |
Item::List | items () const |
QStringList | mimeTypes () const |
Collection::List | searchCollections () const |
void | setFetchScope (const ItemFetchScope &fetchScope) |
void | setMimeTypes (const QStringList &mimeTypes) |
void | setQuery (const SearchQuery &query) |
void | setRecursive (bool recursive) |
void | setRemoteSearchEnabled (bool enabled) |
void | setSearchCollections (const Collection::List &collections) |
void | setTagFetchScope (const TagFetchScope &fetchScope) |
TagFetchScope & | tagFetchScope () |
Public Member Functions inherited from Akonadi::Job | |
Job (QObject *parent=nullptr) | |
~Job () override | |
QString | errorString () const final |
void | start () override |
Public Member Functions inherited from KCompositeJob | |
KCompositeJob (QObject *parent=nullptr) | |
Public Member Functions inherited from KJob | |
KJob (QObject *parent=nullptr) | |
Capabilities | capabilities () const |
qint64 | elapsedTime () const |
int | error () const |
QString | errorText () const |
bool | exec () |
bool | isAutoDelete () const |
bool | isFinishedNotificationHidden () const |
bool | isStartedWithExec () const |
bool | isSuspended () const |
unsigned long | percent () const |
Q_SCRIPTABLE qulonglong | processedAmount (Unit unit) const |
void | setAutoDelete (bool autodelete) |
void | setFinishedNotificationHidden (bool hide=true) |
void | setUiDelegate (KJobUiDelegate *delegate) |
Q_SCRIPTABLE qulonglong | totalAmount (Unit unit) const |
KJobUiDelegate * | uiDelegate () const |
Public Member Functions inherited from QObject | |
QObject (QObject *parent) | |
QBindable< QString > | bindableObjectName () |
bool | blockSignals (bool block) |
const QObjectList & | children () const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectInfo () const const |
void | dumpObjectTree () const const |
QList< QByteArray > | dynamicPropertyNames () const const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (Qt::FindChildOptions options) const const |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
bool | isQuickItemType () const const |
bool | isWidgetType () const const |
bool | isWindowType () const const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
QVariant | property (const char *name) const const |
Q_CLASSINFO (Name, Value) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_GADGET_EXPORT (EXPORT_MACRO) | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_MOC_INCLUDE Q_MOC_INCLUDE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qobject_cast (const QObject *object) |
T | qobject_cast (QObject *object) |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
void | removeEventFilter (QObject *obj) |
void | setObjectName (const QString &name) |
void | setObjectName (QAnyStringView name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | setProperty (const char *name, QVariant &&value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType) |
QThread * | thread () const const |
Protected Member Functions | |
bool | doHandleResponse (qint64 tag, const Protocol::CommandPtr &response) override |
void | doStart () override |
Protected Member Functions inherited from Akonadi::Job | |
bool | addSubjob (KJob *job) override |
bool | doKill () override |
void | emitWriteFinished () |
bool | removeSubjob (KJob *job) override |
Protected Member Functions inherited from KCompositeJob | |
void | clearSubjobs () |
bool | hasSubjobs () const |
const QList< KJob * > & | subjobs () const |
Protected Member Functions inherited from KJob | |
virtual bool | doResume () |
virtual bool | doSuspend () |
void | emitPercent (qulonglong processedAmount, qulonglong totalAmount) |
void | emitResult () |
void | emitSpeed (unsigned long speed) |
bool | isFinished () const |
void | setCapabilities (Capabilities capabilities) |
void | setError (int errorCode) |
void | setErrorText (const QString &errorText) |
void | setPercent (unsigned long percentage) |
void | setProcessedAmount (Unit unit, qulonglong amount) |
void | setProgressUnit (Unit unit) |
void | setTotalAmount (Unit unit, qulonglong amount) |
void | startElapsedTimer () |
Protected Member Functions inherited from QObject | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Additional Inherited Members | |
Public Types inherited from Akonadi::Job | |
enum | Error { ConnectionFailed = UserDefinedError , ProtocolVersionMismatch , UserCanceled , Unknown , UserError = UserDefinedError + 42 } |
using | List = QList<Job *> |
Public Types inherited from KJob | |
typedef QFlags< Capability > | Capabilities |
enum | Capability |
enum | Unit |
Public Types inherited from QObject | |
typedef | QObjectList |
Properties inherited from QObject | |
objectName | |
Public Slots inherited from KJob | |
bool | kill (KJob::KillVerbosity verbosity=KJob::Quietly) |
bool | resume () |
bool | suspend () |
Static Public Member Functions inherited from QObject | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
Public Attributes inherited from KJob | |
Bytes | |
Directories | |
Files | |
Items | |
Killable | |
NoCapabilities | |
Suspendable | |
UnitsCount | |
Protected Slots inherited from Akonadi::Job | |
void | slotResult (KJob *job) override |
Protected Slots inherited from KCompositeJob | |
virtual void | slotInfoMessage (KJob *job, const QString &message) |
virtual void | slotResult (KJob *job) |
Detailed Description
Job that searches for items in the Akonadi storage.
This job searches for items that match a given search query and returns the list of matching item.
- Since
- 4.4
Definition at line 53 of file itemsearchjob.h.
Constructor & Destructor Documentation
◆ ItemSearchJob() [1/2]
|
explicit |
Creates an invalid search job.
- Parameters
-
parent The parent object.
- Since
- 5.1
Definition at line 115 of file itemsearchjob.cpp.
◆ ItemSearchJob() [2/2]
|
explicit |
Creates an item search job.
- Parameters
-
query The search query. parent The parent object.
- Since
- 4.13
Definition at line 122 of file itemsearchjob.cpp.
◆ ~ItemSearchJob()
|
overridedefault |
Destroys the item search job.
Member Function Documentation
◆ doHandleResponse()
|
overrideprotectedvirtual |
This method should be reimplemented in the concrete jobs in case you want to handle incoming data.
It will be called on received data from the backend. The default implementation does nothing.
- Parameters
-
tag The tag of the corresponding command, empty if this is an untagged response. response The received response
- Returns
- Implementations should return true if the last response was processed and the job can emit result. Return false if more responses from server are expected.
Reimplemented from Akonadi::Job.
Definition at line 237 of file itemsearchjob.cpp.
◆ doStart()
|
overrideprotectedvirtual |
This method must be reimplemented in the concrete jobs.
It will be called after the job has been started and a connection to the Akonadi backend has been established.
Implements Akonadi::Job.
Definition at line 214 of file itemsearchjob.cpp.
◆ fetchScope()
ItemFetchScope & ItemSearchJob::fetchScope | ( | ) |
Returns the item fetch scope.
Since this returns a reference it can be used to conveniently modify the current scope in-place, i.e. by calling a method on the returned reference without storing it in a local variable. See the ItemFetchScope documentation for an example.
- Returns
- a reference to the current item fetch scope
- See also
- setFetchScope() for replacing the current item fetch scope
Definition at line 145 of file itemsearchjob.cpp.
◆ isRecursive()
|
nodiscard |
Returns whether the search is recursive.
- Since
- 4.13
Definition at line 197 of file itemsearchjob.cpp.
◆ isRemoteSearchEnabled()
|
nodiscard |
Returns whether remote search is enabled.
- Since
- 4.13
Definition at line 209 of file itemsearchjob.cpp.
◆ items()
|
nodiscard |
Returns the items that matched the search query.
Definition at line 262 of file itemsearchjob.cpp.
◆ itemsReceived
|
signal |
This signal is emitted whenever new matching items have been fetched completely.
- Note
- This is an optimization, instead of waiting for the end of the job and calling items(), you can connect to this signal and get the items incrementally.
- Parameters
-
items The matching items.
◆ mimeTypes()
|
nodiscard |
Returns list of mime types to search in.
- Since
- 4.13
Definition at line 185 of file itemsearchjob.cpp.
◆ searchCollections()
|
nodiscard |
Returns list of collections to search.
This list does not include child collections that will be searched when recursive search is enabled
- Since
- 4.13
Definition at line 173 of file itemsearchjob.cpp.
◆ setFetchScope()
void ItemSearchJob::setFetchScope | ( | const ItemFetchScope & | fetchScope | ) |
Sets the item fetch scope.
The ItemFetchScope controls how much of an matching item's data is fetched from the server, e.g. whether to fetch the full item payload or only meta data.
- Parameters
-
fetchScope The new scope for item fetch operations.
- See also
- fetchScope()
Definition at line 138 of file itemsearchjob.cpp.
◆ setMimeTypes()
void ItemSearchJob::setMimeTypes | ( | const QStringList & | mimeTypes | ) |
Search only for items of given mime types.
- Since
- 4.13
Definition at line 178 of file itemsearchjob.cpp.
◆ setQuery()
void ItemSearchJob::setQuery | ( | const SearchQuery & | query | ) |
◆ setRecursive()
void ItemSearchJob::setRecursive | ( | bool | recursive | ) |
Sets whether the search should recurse into collections.
When set to true, all child collections of the specific collections will be search recursively.
- Parameters
-
recursive Whether to search recursively
- Since
- 4.13
Definition at line 190 of file itemsearchjob.cpp.
◆ setRemoteSearchEnabled()
void ItemSearchJob::setRemoteSearchEnabled | ( | bool | enabled | ) |
Sets whether resources should be queried too.
When set to true, Akonadi will search local indexed items and will also query resources that support server-side search, to forward the query to remote storage (for example using SEARCH feature on IMAP servers) and merge their results with results from local index.
This is useful especially when searching resources, that don't fetch full payload by default, for example the IMAP resource, which only fetches headers by default and the body is fetched on demand, which means that emails that were not yet fully fetched cannot be indexed in local index, and thus cannot be searched. With remote search, even those emails can be included in search results.
This feature is disabled by default.
Results are streamed back to client as they are received from queried sources, so this job can take some time to finish, but will deliver initial results from local index fairly quickly.
- Parameters
-
enabled Whether remote search is enabled
- Since
- 4.13
Definition at line 202 of file itemsearchjob.cpp.
◆ setSearchCollections()
void ItemSearchJob::setSearchCollections | ( | const Collection::List & | collections | ) |
Search only in given collections.
When recursive search is enabled, all child collections of each specified collection will be searched too
By default all collections are be searched.
- Parameters
-
collections Collections to search
- Since
- 4.13
Definition at line 166 of file itemsearchjob.cpp.
◆ setTagFetchScope()
void ItemSearchJob::setTagFetchScope | ( | const TagFetchScope & | fetchScope | ) |
Sets the tag fetch scope.
The tag fetch scope affects what scope of tags for each Item will be retrieved.
Definition at line 152 of file itemsearchjob.cpp.
◆ tagFetchScope()
TagFetchScope & ItemSearchJob::tagFetchScope | ( | ) |
Returns the tag fetch scope.
Since this returns a reference it can be used to conveniently modify the current scope in-place.
Definition at line 159 of file itemsearchjob.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 17:01:42 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.