• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdepimlibs-4.14.10 API Reference
  • KDE Home
  • Contact Us
 

akonadi

  • akonadi
itemfetchscope.h
1/*
2 Copyright (c) 2008 Kevin Krammer <kevin.krammer@gmx.at>
3
4 This library is free software; you can redistribute it and/or modify it
5 under the terms of the GNU Library General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or (at your
7 option) any later version.
8
9 This library is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12 License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to the
16 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17 02110-1301, USA.
18*/
19
20#ifndef ITEMFETCHSCOPE_H
21#define ITEMFETCHSCOPE_H
22
23#include "akonadi_export.h"
24
25#include <QtCore/QSharedDataPointer>
26#include <KDE/KDateTime>
27
28class QStringList;
29template <typename T> class QSet;
30
31namespace Akonadi {
32
33class ItemFetchScopePrivate;
34class TagFetchScope;
35
69class AKONADI_EXPORT ItemFetchScope
70{
71public:
76 enum AncestorRetrieval {
77 None,
78 Parent,
79 All
80 };
81
88 ItemFetchScope();
89
93 ItemFetchScope(const ItemFetchScope &other);
94
98 ~ItemFetchScope();
99
103 ItemFetchScope &operator=(const ItemFetchScope &other);
104
110 QSet<QByteArray> payloadParts() const;
111
119 void fetchPayloadPart(const QByteArray &part, bool fetch = true);
120
126 bool fullPayload() const;
127
134 void fetchFullPayload(bool fetch = true);
135
143 QSet<QByteArray> attributes() const;
144
151 void fetchAttribute(const QByteArray &type, bool fetch = true);
152
158 template <typename T> inline void fetchAttribute(bool fetch = true)
159 {
160 T dummy;
161 fetchAttribute(dummy.type(), fetch);
162 }
163
169 bool allAttributes() const;
170
177 void fetchAllAttributes(bool fetch = true);
178
185 bool cacheOnly() const;
186
194 void setCacheOnly(bool cacheOnly);
195
203 void setCheckForCachedPayloadPartsOnly(bool check = true);
204
212 bool checkForCachedPayloadPartsOnly() const;
213
221 void setAncestorRetrieval(AncestorRetrieval ancestorDepth);
222
229 AncestorRetrieval ancestorRetrieval() const;
230
238 void setFetchModificationTime(bool retrieveMtime);
239
246 bool fetchModificationTime() const;
247
255 void setFetchGid(bool retrieveGID);
256
263 bool fetchGid() const;
264
276 void setIgnoreRetrievalErrors(bool enabled);
277
284 bool ignoreRetrievalErrors() const;
285
289 bool isEmpty() const;
290
301 void setFetchChangedSince(const KDateTime &changedSince);
302
306 KDateTime fetchChangedSince() const;
307
319 void setFetchRemoteIdentification(bool retrieveRid);
320
327 bool fetchRemoteIdentification() const;
328
339 void setFetchTags(bool fetchTags);
340
347 bool fetchTags() const;
348
361 void setTagFetchScope(const TagFetchScope &fetchScope);
362
378 TagFetchScope &tagFetchScope();
379
390 TagFetchScope tagFetchScope() const;
391
398 void setFetchVirtualReferences(bool fetchVRefs);
399
406 bool fetchVirtualReferences() const;
407
408private:
409 //@cond PRIVATE
410 QSharedDataPointer<ItemFetchScopePrivate> d;
411 //@endcond
412};
413
414}
415
416Q_DECLARE_METATYPE(Akonadi::ItemFetchScope)
417
418#endif
Akonadi::ItemFetchScope
Specifies which parts of an item should be fetched from the Akonadi storage.
Definition itemfetchscope.h:70
Akonadi::ItemFetchScope::fetchAttribute
void fetchAttribute(bool fetch=true)
Sets whether the attribute of the requested type should be fetched.
Definition itemfetchscope.h:158
Akonadi::ItemFetchScope::AncestorRetrieval
AncestorRetrieval
Describes the ancestor retrieval depth.
Definition itemfetchscope.h:76
Akonadi::ItemFetchScope::Parent
@ Parent
Only retrieve the immediate parent collection.
Definition itemfetchscope.h:78
Akonadi::ItemFetchScope::None
@ None
No ancestor retrieval at all (the default)
Definition itemfetchscope.h:77
Akonadi::TagFetchScope
Specifies which parts of a tag should be fetched from the Akonadi storage.
Definition tagfetchscope.h:34
Akonadi
FreeBusyManager::Singleton.
Definition actionstatemanager_p.h:28
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Wed Jan 24 2024 00:00:00 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

akonadi

Skip menu "akonadi"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • Related Pages

kdepimlibs-4.14.10 API Reference

Skip menu "kdepimlibs-4.14.10 API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal