diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-11-04 12:40:24 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-11-04 12:40:24 +0100 |
commit | ba94c4300c52dd80774ed7affc2ef9b4508cb7be (patch) | |
tree | 3c8bf6ce042a4544e81901d901a3a3759d0a128a /common/store.cpp | |
parent | 98b682acb8c57cadaea5ff0ac6709d21a591b97b (diff) | |
download | sink-ba94c4300c52dd80774ed7affc2ef9b4508cb7be.tar.gz sink-ba94c4300c52dd80774ed7affc2ef9b4508cb7be.zip |
Don't expose the live query flag directly.
Diffstat (limited to 'common/store.cpp')
-rw-r--r-- | common/store.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/common/store.cpp b/common/store.cpp index d569133..5d6e197 100644 --- a/common/store.cpp +++ b/common/store.cpp | |||
@@ -134,7 +134,7 @@ QSharedPointer<QAbstractItemModel> Store::loadModel(Query query) | |||
134 | SinkTrace() << " Filter: " << query.getBaseFilters(); | 134 | SinkTrace() << " Filter: " << query.getBaseFilters(); |
135 | SinkTrace() << " Parent: " << query.parentProperty; | 135 | SinkTrace() << " Parent: " << query.parentProperty; |
136 | SinkTrace() << " Ids: " << query.ids(); | 136 | SinkTrace() << " Ids: " << query.ids(); |
137 | SinkTrace() << " IsLive: " << query.liveQuery; | 137 | SinkTrace() << " IsLive: " << query.liveQuery(); |
138 | SinkTrace() << " Sorting: " << query.sortProperty; | 138 | SinkTrace() << " Sorting: " << query.sortProperty; |
139 | auto model = QSharedPointer<ModelResult<DomainType, typename DomainType::Ptr>>::create(query, query.requestedProperties); | 139 | auto model = QSharedPointer<ModelResult<DomainType, typename DomainType::Ptr>>::create(query, query.requestedProperties); |
140 | 140 | ||
@@ -149,12 +149,12 @@ QSharedPointer<QAbstractItemModel> Store::loadModel(Query query) | |||
149 | auto aggregatingEmitter = AggregatingResultEmitter<typename DomainType::Ptr>::Ptr::create(); | 149 | auto aggregatingEmitter = AggregatingResultEmitter<typename DomainType::Ptr>::Ptr::create(); |
150 | model->setEmitter(aggregatingEmitter); | 150 | model->setEmitter(aggregatingEmitter); |
151 | 151 | ||
152 | if (query.liveQuery && query.getResourceFilter().ids.isEmpty() && !ApplicationDomain::isGlobalType(ApplicationDomain::getTypeName<DomainType>())) { | 152 | if (query.liveQuery() && query.getResourceFilter().ids.isEmpty() && !ApplicationDomain::isGlobalType(ApplicationDomain::getTypeName<DomainType>())) { |
153 | SinkTrace() << "Listening for new resources"; | 153 | SinkTrace() << "Listening for new resources"; |
154 | auto facade = FacadeFactory::instance().getFacade<ApplicationDomain::SinkResource>("", ""); | 154 | auto facade = FacadeFactory::instance().getFacade<ApplicationDomain::SinkResource>("", ""); |
155 | Q_ASSERT(facade); | 155 | Q_ASSERT(facade); |
156 | Sink::Query resourceQuery; | 156 | Sink::Query resourceQuery; |
157 | resourceQuery.liveQuery = query.liveQuery; | 157 | query.setFlags(Query::LiveQuery); |
158 | auto result = facade->load(resourceQuery); | 158 | auto result = facade->load(resourceQuery); |
159 | auto emitter = result.second; | 159 | auto emitter = result.second; |
160 | emitter->onAdded([query, aggregatingEmitter](const ApplicationDomain::SinkResource::Ptr &resource) { | 160 | emitter->onAdded([query, aggregatingEmitter](const ApplicationDomain::SinkResource::Ptr &resource) { |
@@ -344,8 +344,7 @@ template <class DomainType> | |||
344 | QList<DomainType> Store::read(const Sink::Query &q) | 344 | QList<DomainType> Store::read(const Sink::Query &q) |
345 | { | 345 | { |
346 | auto query = q; | 346 | auto query = q; |
347 | query.synchronousQuery = true; | 347 | query.setFlags(Query::SynchronousQuery); |
348 | query.liveQuery = false; | ||
349 | QList<DomainType> list; | 348 | QList<DomainType> list; |
350 | auto resources = getResources(query.getResourceFilter(), ApplicationDomain::getTypeName<DomainType>()); | 349 | auto resources = getResources(query.getResourceFilter(), ApplicationDomain::getTypeName<DomainType>()); |
351 | auto aggregatingEmitter = AggregatingResultEmitter<typename DomainType::Ptr>::Ptr::create(); | 350 | auto aggregatingEmitter = AggregatingResultEmitter<typename DomainType::Ptr>::Ptr::create(); |