diff options
-rw-r--r-- | common/resource.h | 7 | ||||
-rw-r--r-- | dummyresource/facade.cpp | 3 |
2 files changed, 9 insertions, 1 deletions
diff --git a/common/resource.h b/common/resource.h index bcce229..18a6827 100644 --- a/common/resource.h +++ b/common/resource.h | |||
@@ -26,10 +26,12 @@ | |||
26 | namespace Akonadi2 | 26 | namespace Akonadi2 |
27 | { | 27 | { |
28 | 28 | ||
29 | /** | ||
30 | * Resource interface | ||
31 | */ | ||
29 | class AKONADI2COMMON_EXPORT Resource | 32 | class AKONADI2COMMON_EXPORT Resource |
30 | { | 33 | { |
31 | public: | 34 | public: |
32 | //TODO: configuration | ||
33 | Resource(); | 35 | Resource(); |
34 | virtual ~Resource(); | 36 | virtual ~Resource(); |
35 | 37 | ||
@@ -44,6 +46,9 @@ private: | |||
44 | Private * const d; | 46 | Private * const d; |
45 | }; | 47 | }; |
46 | 48 | ||
49 | /** | ||
50 | * Factory interface for resource to implement. | ||
51 | */ | ||
47 | class ResourceFactory : public QObject | 52 | class ResourceFactory : public QObject |
48 | { | 53 | { |
49 | public: | 54 | public: |
diff --git a/dummyresource/facade.cpp b/dummyresource/facade.cpp index 980833f..af8c187 100644 --- a/dummyresource/facade.cpp +++ b/dummyresource/facade.cpp | |||
@@ -136,6 +136,7 @@ void DummyResourceFacade::readValue(QSharedPointer<Akonadi2::Storage> storage, c | |||
136 | auto adaptor = mFactory->createAdaptor(buffer.entity()); | 136 | auto adaptor = mFactory->createAdaptor(buffer.entity()); |
137 | //TODO only copy requested properties | 137 | //TODO only copy requested properties |
138 | auto memoryAdaptor = QSharedPointer<Akonadi2::ApplicationDomain::MemoryBufferAdaptor>::create(*adaptor); | 138 | auto memoryAdaptor = QSharedPointer<Akonadi2::ApplicationDomain::MemoryBufferAdaptor>::create(*adaptor); |
139 | // here we could copy additional properties that don't have a 1:1 mapping, such as separately stored tags. | ||
139 | auto event = QSharedPointer<Akonadi2::ApplicationDomain::Event>::create("org.kde.dummy", QByteArray::fromRawData(static_cast<char*>(keyValue), keySize), revision, memoryAdaptor); | 140 | auto event = QSharedPointer<Akonadi2::ApplicationDomain::Event>::create("org.kde.dummy", QByteArray::fromRawData(static_cast<char*>(keyValue), keySize), revision, memoryAdaptor); |
140 | resultCallback(event); | 141 | resultCallback(event); |
141 | } | 142 | } |
@@ -154,6 +155,8 @@ Async::Job<void> DummyResourceFacade::load(const Akonadi2::Query &query, const s | |||
154 | 155 | ||
155 | auto storage = QSharedPointer<Akonadi2::Storage>::create(Akonadi2::Store::storageLocation(), "org.kde.dummy"); | 156 | auto storage = QSharedPointer<Akonadi2::Storage>::create(Akonadi2::Store::storageLocation(), "org.kde.dummy"); |
156 | 157 | ||
158 | //TODO use transaction over full query and record store revision. We'll need it to update the query. | ||
159 | |||
157 | //Index lookups | 160 | //Index lookups |
158 | QVector<QByteArray> keys; | 161 | QVector<QByteArray> keys; |
159 | if (query.propertyFilter.contains("uid")) { | 162 | if (query.propertyFilter.contains("uid")) { |