From 9b0688885f41db1e1950d0146502511c4434aca2 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Wed, 13 Jan 2016 23:40:17 +0100 Subject: Separated the Resource from the rest by introducing Entity --- common/domain/applicationdomaintype.h | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) (limited to 'common') diff --git a/common/domain/applicationdomaintype.h b/common/domain/applicationdomaintype.h index cff0172..44d8743 100644 --- a/common/domain/applicationdomaintype.h +++ b/common/domain/applicationdomaintype.h @@ -82,29 +82,34 @@ inline bool operator==(const ApplicationDomainType& lhs, const ApplicationDomain && lhs.resourceInstanceIdentifier() == rhs.resourceInstanceIdentifier(); } -struct Event : public ApplicationDomainType { - typedef QSharedPointer Ptr; +struct Entity : public ApplicationDomainType { + typedef QSharedPointer Ptr; using ApplicationDomainType::ApplicationDomainType; }; -struct Todo : public ApplicationDomainType { +struct Event : public Entity { + typedef QSharedPointer Ptr; + using Entity::Entity; +}; + +struct Todo : public Entity { typedef QSharedPointer Ptr; - using ApplicationDomainType::ApplicationDomainType; + using Entity::Entity; }; -struct Calendar : public ApplicationDomainType { +struct Calendar : public Entity { typedef QSharedPointer Ptr; - using ApplicationDomainType::ApplicationDomainType; + using Entity::Entity; }; -struct Mail : public ApplicationDomainType { +struct Mail : public Entity { typedef QSharedPointer Ptr; - using ApplicationDomainType::ApplicationDomainType; + using Entity::Entity; }; -struct Folder : public ApplicationDomainType { +struct Folder : public Entity { typedef QSharedPointer Ptr; - using ApplicationDomainType::ApplicationDomainType; + using Entity::Entity; }; /** @@ -155,6 +160,8 @@ class TypeImplementation; Q_DECLARE_METATYPE(Akonadi2::ApplicationDomain::ApplicationDomainType) Q_DECLARE_METATYPE(Akonadi2::ApplicationDomain::ApplicationDomainType::Ptr) +Q_DECLARE_METATYPE(Akonadi2::ApplicationDomain::Entity) +Q_DECLARE_METATYPE(Akonadi2::ApplicationDomain::Entity::Ptr) Q_DECLARE_METATYPE(Akonadi2::ApplicationDomain::Event) Q_DECLARE_METATYPE(Akonadi2::ApplicationDomain::Event::Ptr) Q_DECLARE_METATYPE(Akonadi2::ApplicationDomain::Mail) -- cgit v1.2.3