diff options
Diffstat (limited to 'dummyresource/domainadaptor.cpp')
-rw-r--r-- | dummyresource/domainadaptor.cpp | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/dummyresource/domainadaptor.cpp b/dummyresource/domainadaptor.cpp index 9bd3770..ec5e2be 100644 --- a/dummyresource/domainadaptor.cpp +++ b/dummyresource/domainadaptor.cpp | |||
@@ -70,7 +70,12 @@ DummyEventAdaptorFactory::DummyEventAdaptorFactory() | |||
70 | return QString::fromStdString(buffer->summary()->c_str()); | 70 | return QString::fromStdString(buffer->summary()->c_str()); |
71 | }); | 71 | }); |
72 | mLocalMapper = QSharedPointer<PropertyMapper<Akonadi2::Domain::Buffer::Event> >::create(); | 72 | mLocalMapper = QSharedPointer<PropertyMapper<Akonadi2::Domain::Buffer::Event> >::create(); |
73 | //TODO set accessors for all properties | 73 | mLocalMapper->mReadAccessors.insert("summary", [](Akonadi2::Domain::Buffer::Event const *buffer) -> QVariant { |
74 | return QString::fromStdString(buffer->summary()->c_str()); | ||
75 | }); | ||
76 | mLocalMapper->mReadAccessors.insert("uid", [](Akonadi2::Domain::Buffer::Event const *buffer) -> QVariant { | ||
77 | return QString::fromStdString(buffer->uid()->c_str()); | ||
78 | }); | ||
74 | 79 | ||
75 | } | 80 | } |
76 | 81 | ||
@@ -109,3 +114,27 @@ QSharedPointer<Akonadi2::Domain::BufferAdaptor> DummyEventAdaptorFactory::create | |||
109 | return adaptor; | 114 | return adaptor; |
110 | } | 115 | } |
111 | 116 | ||
117 | void DummyEventAdaptorFactory::createBuffer(const Akonadi2::Domain::Event &event, flatbuffers::FlatBufferBuilder &fbb) | ||
118 | { | ||
119 | flatbuffers::FlatBufferBuilder eventFbb; | ||
120 | eventFbb.Clear(); | ||
121 | { | ||
122 | auto summary = eventFbb.CreateString(event.getProperty("summary").toString().toStdString()); | ||
123 | DummyCalendar::DummyEventBuilder eventBuilder(eventFbb); | ||
124 | eventBuilder.add_summary(summary); | ||
125 | auto eventLocation = eventBuilder.Finish(); | ||
126 | DummyCalendar::FinishDummyEventBuffer(eventFbb, eventLocation); | ||
127 | } | ||
128 | |||
129 | flatbuffers::FlatBufferBuilder localFbb; | ||
130 | { | ||
131 | auto uid = localFbb.CreateString(event.getProperty("uid").toString().toStdString()); | ||
132 | auto localBuilder = Akonadi2::Domain::Buffer::EventBuilder(localFbb); | ||
133 | localBuilder.add_uid(uid); | ||
134 | auto location = localBuilder.Finish(); | ||
135 | Akonadi2::Domain::Buffer::FinishEventBuffer(localFbb, location); | ||
136 | } | ||
137 | |||
138 | Akonadi2::EntityBuffer::assembleEntityBuffer(fbb, localFbb.GetBufferPointer(), localFbb.GetSize(), eventFbb.GetBufferPointer(), eventFbb.GetSize(), 0, 0); | ||
139 | } | ||
140 | |||