summaryrefslogtreecommitdiffstats
path: root/common/specialpurposepreprocessor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'common/specialpurposepreprocessor.cpp')
-rw-r--r--common/specialpurposepreprocessor.cpp39
1 files changed, 20 insertions, 19 deletions
diff --git a/common/specialpurposepreprocessor.cpp b/common/specialpurposepreprocessor.cpp
index 920f78a..b3a6bab 100644
--- a/common/specialpurposepreprocessor.cpp
+++ b/common/specialpurposepreprocessor.cpp
@@ -1,6 +1,7 @@
1#include "specialpurposepreprocessor.h" 1#include "specialpurposepreprocessor.h"
2#include "query.h" 2#include "query.h"
3#include "applicationdomaintype.h" 3#include "applicationdomaintype.h"
4#include "datastorequery.h"
4 5
5using namespace Sink; 6using namespace Sink;
6 7
@@ -48,25 +49,25 @@ SpecialPurposeProcessor::SpecialPurposeProcessor(const QByteArray &resourceType,
48 49
49QByteArray SpecialPurposeProcessor::ensureFolder(const QByteArray &specialPurpose) 50QByteArray SpecialPurposeProcessor::ensureFolder(const QByteArray &specialPurpose)
50{ 51{
51 /* if (!mSpecialPurposeFolders.contains(specialPurpose)) { */ 52 if (!mSpecialPurposeFolders.contains(specialPurpose)) {
52 /* //Try to find an existing drafts folder */ 53 //Try to find an existing drafts folder
53 /* Sink::EntityReader<ApplicationDomain::Folder> reader(mResourceType, mResourceInstanceIdentifier); */ 54 DataStoreQuery dataStoreQuery{Sink::Query().filter<ApplicationDomain::Folder::SpecialPurpose>(Query::Comparator(specialPurpose, Query::Comparator::Contains)), ApplicationDomain::getTypeName<ApplicationDomain::Folder>(), entityStore()};
54 /* reader.query(Sink::Query().filter<ApplicationDomain::Folder::SpecialPurpose>(Query::Comparator(specialPurpose, Query::Comparator::Contains)), */ 55 auto resultSet = dataStoreQuery.execute();
55 /* [this, specialPurpose](const ApplicationDomain::Folder &f) -> bool{ */ 56 resultSet.replaySet(0, 1, [&, this](const ResultSet::Result &r) {
56 /* mSpecialPurposeFolders.insert(specialPurpose, f.identifier()); */ 57 mSpecialPurposeFolders.insert(specialPurpose, r.entity.identifier());
57 /* return false; */ 58 });
58 /* }); */ 59
59 /* if (!mSpecialPurposeFolders.contains(specialPurpose)) { */ 60 if (!mSpecialPurposeFolders.contains(specialPurpose)) {
60 /* SinkTrace() << "Failed to find a drafts folder, creating a new one"; */ 61 SinkTrace() << "Failed to find a drafts folder, creating a new one";
61 /* auto folder = ApplicationDomain::Folder::create(mResourceInstanceIdentifier); */ 62 auto folder = ApplicationDomain::Folder::create(mResourceInstanceIdentifier);
62 /* folder.setSpecialPurpose(QByteArrayList() << specialPurpose); */ 63 folder.setSpecialPurpose(QByteArrayList() << specialPurpose);
63 /* folder.setName(sSpecialPurposeFolders.value(specialPurpose)); */ 64 folder.setName(sSpecialPurposeFolders.value(specialPurpose));
64 /* folder.setIcon("folder"); */ 65 folder.setIcon("folder");
65 /* //This processes the pipeline synchronously */ 66 //This processes the pipeline synchronously
66 /* createEntity(folder); */ 67 createEntity(folder);
67 /* mSpecialPurposeFolders.insert(specialPurpose, folder.identifier()); */ 68 mSpecialPurposeFolders.insert(specialPurpose, folder.identifier());
68 /* } */ 69 }
69 /* } */ 70 }
70 return mSpecialPurposeFolders.value(specialPurpose); 71 return mSpecialPurposeFolders.value(specialPurpose);
71} 72}
72 73