From 4f1afa39bec38ea38820115e1bbabf4506c2d45c Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Thu, 9 Apr 2015 18:16:39 +0200 Subject: Moved generic parts of the domain adaptor to common --- dummyresource/domainadaptor.cpp | 74 +---------------------------------------- 1 file changed, 1 insertion(+), 73 deletions(-) (limited to 'dummyresource/domainadaptor.cpp') diff --git a/dummyresource/domainadaptor.cpp b/dummyresource/domainadaptor.cpp index b133614..74a8dd6 100644 --- a/dummyresource/domainadaptor.cpp +++ b/dummyresource/domainadaptor.cpp @@ -14,55 +14,11 @@ using namespace DummyCalendar; using namespace flatbuffers; -//This will become a generic implementation that simply takes the resource buffer and local buffer pointer -class DummyEventAdaptor : public Akonadi2::ApplicationDomain::BufferAdaptor -{ -public: - DummyEventAdaptor() - : BufferAdaptor() - { - - } - - void setProperty(const QByteArray &key, const QVariant &value) - { - if (mResourceMapper && mResourceMapper->mWriteAccessors.contains(key)) { - // mResourceMapper->setProperty(key, value, mResourceBuffer); - } else { - // mLocalMapper.; - } - } - - virtual QVariant getProperty(const QByteArray &key) const - { - if (mResourceBuffer && mResourceMapper->mReadAccessors.contains(key)) { - return mResourceMapper->getProperty(key, mResourceBuffer); - } else if (mLocalBuffer && mLocalMapper->mReadAccessors.contains(key)) { - return mLocalMapper->getProperty(key, mLocalBuffer); - } - qWarning() << "no mapping available for key " << key; - return QVariant(); - } - - virtual QList availableProperties() const - { - QList props; - props << mResourceMapper->mReadAccessors.keys(); - props << mLocalMapper->mReadAccessors.keys(); - return props; - } - - Akonadi2::ApplicationDomain::Buffer::Event const *mLocalBuffer; - DummyEvent const *mResourceBuffer; - - QSharedPointer > mLocalMapper; - QSharedPointer > mResourceMapper; -}; - DummyEventAdaptorFactory::DummyEventAdaptorFactory() : DomainTypeAdaptorFactory() { + //TODO turn this into initializePropertyMapper as well? mResourceMapper = QSharedPointer >::create(); mResourceMapper->mReadAccessors.insert("summary", [](DummyEvent const *buffer) -> QVariant { if (buffer->summary()) { @@ -70,36 +26,8 @@ DummyEventAdaptorFactory::DummyEventAdaptorFactory() } return QVariant(); }); - mLocalMapper = QSharedPointer >::create(); - mLocalMapper->mReadAccessors.insert("summary", [](Akonadi2::ApplicationDomain::Buffer::Event const *buffer) -> QVariant { - if (buffer->summary()) { - return QString::fromStdString(buffer->summary()->c_str()); - } - return QVariant(); - }); - mLocalMapper->mReadAccessors.insert("uid", [](Akonadi2::ApplicationDomain::Buffer::Event const *buffer) -> QVariant { - if (buffer->uid()) { - return QString::fromStdString(buffer->uid()->c_str()); - } - return QVariant(); - }); - } -//TODO pass EntityBuffer instead? -QSharedPointer DummyEventAdaptorFactory::createAdaptor(const Akonadi2::Entity &entity) -{ - const auto resourceBuffer = Akonadi2::EntityBuffer::readBuffer(entity.resource()); - const auto localBuffer = Akonadi2::EntityBuffer::readBuffer(entity.local()); - // const auto metadataBuffer = Akonadi2::EntityBuffer::readBuffer(entity.metadata()); - - auto adaptor = QSharedPointer::create(); - adaptor->mLocalBuffer = localBuffer; - adaptor->mLocalMapper = mLocalMapper; - adaptor->mResourceBuffer = resourceBuffer; - adaptor->mResourceMapper = mResourceMapper; - return adaptor; -} void DummyEventAdaptorFactory::createBuffer(const Akonadi2::ApplicationDomain::Event &event, flatbuffers::FlatBufferBuilder &fbb) { -- cgit v1.2.3