diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-12-08 13:18:19 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-12-08 13:18:19 +0100 |
commit | ae4b64b198a143240aa5dd1e202e5016abfdae71 (patch) | |
tree | 5d9d58a512ebc60c44637d11c9424f67a02887e8 /examples/imapresource/imapresource.cpp | |
parent | f425c2070131161dc11bcf70e35f8d1848cadb65 (diff) | |
download | sink-ae4b64b198a143240aa5dd1e202e5016abfdae71.tar.gz sink-ae4b64b198a143240aa5dd1e202e5016abfdae71.zip |
Wrap references in a Reerence type.
This allows us to make sure that references are not taken out of
context (the resource).
Because we need to use the type-specific accessors more we also ran into
a problem that we cannot "downcast" a reference with the change
recording still working, for that we have the cast<T>() operator now.
Diffstat (limited to 'examples/imapresource/imapresource.cpp')
-rw-r--r-- | examples/imapresource/imapresource.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/examples/imapresource/imapresource.cpp b/examples/imapresource/imapresource.cpp index 9577f3e..238fb0c 100644 --- a/examples/imapresource/imapresource.cpp +++ b/examples/imapresource/imapresource.cpp | |||
@@ -92,17 +92,17 @@ public: | |||
92 | const auto remoteId = folderPath.toUtf8(); | 92 | const auto remoteId = folderPath.toUtf8(); |
93 | const auto bufferType = ENTITY_TYPE_FOLDER; | 93 | const auto bufferType = ENTITY_TYPE_FOLDER; |
94 | Sink::ApplicationDomain::Folder folder; | 94 | Sink::ApplicationDomain::Folder folder; |
95 | folder.setProperty(ApplicationDomain::Folder::Name::name, folderName); | 95 | folder.setName(folderName); |
96 | folder.setProperty(ApplicationDomain::Folder::Icon::name, icon); | 96 | folder.setIcon(icon); |
97 | QHash<QByteArray, Query::Comparator> mergeCriteria; | 97 | QHash<QByteArray, Query::Comparator> mergeCriteria; |
98 | if (SpecialPurpose::isSpecialPurposeFolderName(folderName)) { | 98 | if (SpecialPurpose::isSpecialPurposeFolderName(folderName)) { |
99 | auto type = SpecialPurpose::getSpecialPurposeType(folderName); | 99 | auto type = SpecialPurpose::getSpecialPurposeType(folderName); |
100 | folder.setProperty(ApplicationDomain::Folder::SpecialPurpose::name, QVariant::fromValue(QByteArrayList() << type)); | 100 | folder.setSpecialPurpose(QByteArrayList() << type); |
101 | mergeCriteria.insert(ApplicationDomain::Folder::SpecialPurpose::name, Query::Comparator(type, Query::Comparator::Contains)); | 101 | mergeCriteria.insert(ApplicationDomain::Folder::SpecialPurpose::name, Query::Comparator(type, Query::Comparator::Contains)); |
102 | } | 102 | } |
103 | 103 | ||
104 | if (!parentFolderRid.isEmpty()) { | 104 | if (!parentFolderRid.isEmpty()) { |
105 | folder.setProperty("parent", syncStore().resolveRemoteId(ENTITY_TYPE_FOLDER, parentFolderRid.toUtf8())); | 105 | folder.setParent(syncStore().resolveRemoteId(ENTITY_TYPE_FOLDER, parentFolderRid.toUtf8())); |
106 | } | 106 | } |
107 | createOrModify(bufferType, remoteId, folder, mergeCriteria); | 107 | createOrModify(bufferType, remoteId, folder, mergeCriteria); |
108 | return remoteId; | 108 | return remoteId; |