File indexing completed on 2024-11-10 04:40:41
0001 /* 0002 SPDX-FileCopyrightText: 2008 Kevin Krammer <kevin.krammer@gmx.at> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "itemfetchscope.h" 0010 #include "tagfetchscope.h" 0011 #include <QDateTime> 0012 #include <QSet> 0013 0014 namespace Akonadi 0015 { 0016 /** 0017 * @internal 0018 */ 0019 class ItemFetchScopePrivate : public QSharedData 0020 { 0021 public: 0022 ItemFetchScopePrivate() 0023 : mAncestorDepth(ItemFetchScope::None) 0024 , mFullPayload(false) 0025 , mAllAttributes(false) 0026 , mCacheOnly(false) 0027 , mCheckCachedPayloadPartsOnly(false) 0028 , mFetchMtime(true) 0029 , mIgnoreRetrievalErrors(false) 0030 , mFetchRid(true) 0031 , mFetchGid(false) 0032 , mFetchTags(false) 0033 , mFetchVRefs(false) 0034 , mFetchRelations(false) 0035 { 0036 mTagFetchScope.setFetchIdOnly(true); 0037 } 0038 0039 ItemFetchScopePrivate(const ItemFetchScopePrivate &other) 0040 : QSharedData(other) 0041 , mPayloadParts(other.mPayloadParts) 0042 , mAttributes(other.mAttributes) 0043 , mAncestorDepth(other.mAncestorDepth) 0044 , mFullPayload(other.mFullPayload) 0045 , mAllAttributes(other.mAllAttributes) 0046 , mCacheOnly(other.mCacheOnly) 0047 , mCheckCachedPayloadPartsOnly(other.mCheckCachedPayloadPartsOnly) 0048 , mFetchMtime(other.mFetchMtime) 0049 , mIgnoreRetrievalErrors(other.mIgnoreRetrievalErrors) 0050 , mChangedSince(other.mChangedSince) 0051 , mFetchRid(other.mFetchRid) 0052 , mFetchGid(other.mFetchGid) 0053 , mFetchTags(other.mFetchTags) 0054 , mTagFetchScope(other.mTagFetchScope) 0055 , mFetchVRefs(other.mFetchVRefs) 0056 , mFetchRelations(other.mFetchRelations) 0057 { 0058 } 0059 0060 public: 0061 QSet<QByteArray> mPayloadParts; 0062 QSet<QByteArray> mAttributes; 0063 ItemFetchScope::AncestorRetrieval mAncestorDepth; 0064 bool mFullPayload; 0065 bool mAllAttributes; 0066 bool mCacheOnly; 0067 bool mCheckCachedPayloadPartsOnly; 0068 bool mFetchMtime; 0069 bool mIgnoreRetrievalErrors; 0070 QDateTime mChangedSince; 0071 bool mFetchRid; 0072 bool mFetchGid; 0073 bool mFetchTags; 0074 TagFetchScope mTagFetchScope; 0075 bool mFetchVRefs; 0076 bool mFetchRelations; 0077 }; 0078 0079 }