From 47567ba91907c2fe35c73a7d28915aee497e39fd Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Tue, 8 Sep 2015 23:03:29 +0200 Subject: DummyStore that is not overly complicated by using flatbuffers. --- examples/dummyresource/dummystore.cpp | 63 +++++++++++------------------------ 1 file changed, 20 insertions(+), 43 deletions(-) (limited to 'examples/dummyresource/dummystore.cpp') diff --git a/examples/dummyresource/dummystore.cpp b/examples/dummyresource/dummystore.cpp index 41b48ed..0356ec0 100644 --- a/examples/dummyresource/dummystore.cpp +++ b/examples/dummyresource/dummystore.cpp @@ -20,72 +20,49 @@ #include -#include "dummycalendar_generated.h" -#include "mail_generated.h" - -static std::string createEvent(int i) +static QMap createEvent(int i) { + QMap event; + event.insert("summary", QString("summary%1").arg(i)); static const size_t attachmentSize = 1024*2; // 2KB - static uint8_t rawData[attachmentSize]; - static flatbuffers::FlatBufferBuilder fbb; - fbb.Clear(); - { - uint8_t *rawDataPtr = nullptr; - auto summary = fbb.CreateString("summary" + std::to_string(i)); - auto data = fbb.CreateUninitializedVector(attachmentSize, &rawDataPtr); - DummyCalendar::DummyEventBuilder eventBuilder(fbb); - eventBuilder.add_summary(summary); - eventBuilder.add_attachment(data); - auto eventLocation = eventBuilder.Finish(); - DummyCalendar::FinishDummyEventBuffer(fbb, eventLocation); - memcpy((void*)rawDataPtr, rawData, attachmentSize); - } - - return std::string(reinterpret_cast(fbb.GetBufferPointer()), fbb.GetSize()); + event.insert("attachment", QByteArray(attachmentSize, 'c')); + return event; } -static std::string createMail(int i) +static QMap createMail(int i) { - static flatbuffers::FlatBufferBuilder fbb; - fbb.Clear(); - { - auto subject = fbb.CreateString("summary" + std::to_string(i)); - Akonadi2::ApplicationDomain::Buffer::MailBuilder mailBuilder(fbb); - mailBuilder.add_subject(subject); - Akonadi2::ApplicationDomain::Buffer::FinishMailBuffer(fbb, mailBuilder.Finish()); - } - - return std::string(reinterpret_cast(fbb.GetBufferPointer()), fbb.GetSize()); + QMap mail; + mail.insert("subject", QString("subject%1").arg(i)); + return mail; } -QMap populate() +QMap > populateEvents() { - QMap content; + QMap> content; for (int i = 0; i < 2; i++) { - auto event = createEvent(i); - content.insert(QString("key%1").arg(i), QString::fromStdString(event)); + content.insert(QString("key%1").arg(i), createEvent(i)); } return content; } -QMap populateMails() +QMap > populateMails() { - QMap content; + QMap> content; for (int i = 0; i < 2; i++) { - content.insert(QString("key%1").arg(i), QString::fromStdString(createMail(i))); + content.insert(QString("key%1").arg(i), createMail(i)); } return content; } -static QMap s_dataSource = populate(); -static QMap s_mailSource = populateMails(); +static QMap > s_eventSource = populateEvents(); +static QMap > s_mailSource = populateMails(); -QMap DummyStore::events() const +QMap > DummyStore::events() const { - return s_dataSource; + return s_eventSource; } -QMap DummyStore::mails() const +QMap > DummyStore::mails() const { return s_mailSource; } -- cgit v1.2.3