diff options
Diffstat (limited to 'examples/webdavcommon')
-rw-r--r-- | examples/webdavcommon/webdav.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/examples/webdavcommon/webdav.cpp b/examples/webdavcommon/webdav.cpp index ffda34a..0dfb6c0 100644 --- a/examples/webdavcommon/webdav.cpp +++ b/examples/webdavcommon/webdav.cpp | |||
@@ -157,13 +157,20 @@ KAsync::Job<void> WebDavSynchronizer::synchronizeWithSource(const Sink::QueryBas | |||
157 | return KAsync::null<void>(); | 157 | return KAsync::null<void>(); |
158 | } | 158 | } |
159 | 159 | ||
160 | SinkTrace() << "Syncing collection:" << collectionResourceID; | 160 | SinkTrace() << "Syncing collection:" << collectionResourceID << collection.displayName(); |
161 | auto itemsResourceIDs = QSharedPointer<QSet<QByteArray>>::create(); | 161 | auto itemsResourceIDs = QSharedPointer<QSet<QByteArray>>::create(); |
162 | return synchronizeCollection(collection, progress, total, itemsResourceIDs) | 162 | return synchronizeCollection(collection, progress, total, itemsResourceIDs) |
163 | .then([=] { | 163 | .then([=] { |
164 | scanForRemovals(mEntityType, [&itemsResourceIDs](const QByteArray &remoteId) { | 164 | const auto collectionLocalId = collectionLocalResourceID(collection); |
165 | return itemsResourceIDs->contains(remoteId); | 165 | scanForRemovals(mEntityType, |
166 | }); | 166 | [&](const std::function<void(const QByteArray &)> &callback) { |
167 | //FIXME: The collection type just happens to have the same name as the parent collection property | ||
168 | const auto collectionProperty = mCollectionType; | ||
169 | store().indexLookup(mEntityType, collectionProperty, collectionLocalId, callback); | ||
170 | }, | ||
171 | [&itemsResourceIDs](const QByteArray &remoteId) { | ||
172 | return itemsResourceIDs->contains(remoteId); | ||
173 | }); | ||
167 | }); | 174 | }); |
168 | }) | 175 | }) |
169 | .then([=]() { | 176 | .then([=]() { |