diff options
Diffstat (limited to 'common/domain/applicationdomaintype.cpp')
-rw-r--r-- | common/domain/applicationdomaintype.cpp | 64 |
1 files changed, 10 insertions, 54 deletions
diff --git a/common/domain/applicationdomaintype.cpp b/common/domain/applicationdomaintype.cpp index c9cef3f..44f5a75 100644 --- a/common/domain/applicationdomaintype.cpp +++ b/common/domain/applicationdomaintype.cpp | |||
@@ -65,6 +65,9 @@ int registerProperty() { | |||
65 | return 0; | 65 | return 0; |
66 | } | 66 | } |
67 | 67 | ||
68 | #define SINK_REGISTER_ENTITY(ENTITY) \ | ||
69 | constexpr const char *ENTITY::name; | ||
70 | |||
68 | #define SINK_REGISTER_PROPERTY(ENTITYTYPE, PROPERTY) \ | 71 | #define SINK_REGISTER_PROPERTY(ENTITYTYPE, PROPERTY) \ |
69 | constexpr const char *ENTITYTYPE::PROPERTY::name; \ | 72 | constexpr const char *ENTITYTYPE::PROPERTY::name; \ |
70 | static int foo##ENTITYTYPE##PROPERTY = registerProperty<ENTITYTYPE, ENTITYTYPE::PROPERTY>(); | 73 | static int foo##ENTITYTYPE##PROPERTY = registerProperty<ENTITYTYPE, ENTITYTYPE::PROPERTY>(); |
@@ -72,6 +75,10 @@ int registerProperty() { | |||
72 | namespace Sink { | 75 | namespace Sink { |
73 | namespace ApplicationDomain { | 76 | namespace ApplicationDomain { |
74 | 77 | ||
78 | constexpr const char *SinkResource::name; | ||
79 | constexpr const char *SinkAccount::name; | ||
80 | |||
81 | SINK_REGISTER_ENTITY(Mail); | ||
75 | SINK_REGISTER_PROPERTY(Mail, Sender); | 82 | SINK_REGISTER_PROPERTY(Mail, Sender); |
76 | SINK_REGISTER_PROPERTY(Mail, To); | 83 | SINK_REGISTER_PROPERTY(Mail, To); |
77 | SINK_REGISTER_PROPERTY(Mail, Cc); | 84 | SINK_REGISTER_PROPERTY(Mail, Cc); |
@@ -90,6 +97,7 @@ SINK_REGISTER_PROPERTY(Mail, MessageId); | |||
90 | SINK_REGISTER_PROPERTY(Mail, ParentMessageId); | 97 | SINK_REGISTER_PROPERTY(Mail, ParentMessageId); |
91 | SINK_REGISTER_PROPERTY(Mail, ThreadId); | 98 | SINK_REGISTER_PROPERTY(Mail, ThreadId); |
92 | 99 | ||
100 | SINK_REGISTER_ENTITY(Folder); | ||
93 | SINK_REGISTER_PROPERTY(Folder, Name); | 101 | SINK_REGISTER_PROPERTY(Folder, Name); |
94 | SINK_REGISTER_PROPERTY(Folder, Icon); | 102 | SINK_REGISTER_PROPERTY(Folder, Icon); |
95 | SINK_REGISTER_PROPERTY(Folder, SpecialPurpose); | 103 | SINK_REGISTER_PROPERTY(Folder, SpecialPurpose); |
@@ -98,6 +106,7 @@ SINK_REGISTER_PROPERTY(Folder, Parent); | |||
98 | SINK_REGISTER_PROPERTY(Folder, Count); | 106 | SINK_REGISTER_PROPERTY(Folder, Count); |
99 | SINK_REGISTER_PROPERTY(Folder, FullContentAvailable); | 107 | SINK_REGISTER_PROPERTY(Folder, FullContentAvailable); |
100 | 108 | ||
109 | SINK_REGISTER_ENTITY(Contact); | ||
101 | SINK_REGISTER_PROPERTY(Contact, Uid); | 110 | SINK_REGISTER_PROPERTY(Contact, Uid); |
102 | SINK_REGISTER_PROPERTY(Contact, Fn); | 111 | SINK_REGISTER_PROPERTY(Contact, Fn); |
103 | SINK_REGISTER_PROPERTY(Contact, Firstname); | 112 | SINK_REGISTER_PROPERTY(Contact, Firstname); |
@@ -106,6 +115,7 @@ SINK_REGISTER_PROPERTY(Contact, Emails); | |||
106 | SINK_REGISTER_PROPERTY(Contact, Vcard); | 115 | SINK_REGISTER_PROPERTY(Contact, Vcard); |
107 | SINK_REGISTER_PROPERTY(Contact, Addressbook); | 116 | SINK_REGISTER_PROPERTY(Contact, Addressbook); |
108 | 117 | ||
118 | SINK_REGISTER_ENTITY(Addressbook); | ||
109 | SINK_REGISTER_PROPERTY(Addressbook, Name); | 119 | SINK_REGISTER_PROPERTY(Addressbook, Name); |
110 | SINK_REGISTER_PROPERTY(Addressbook, Parent); | 120 | SINK_REGISTER_PROPERTY(Addressbook, Parent); |
111 | SINK_REGISTER_PROPERTY(Addressbook, LastUpdated); | 121 | SINK_REGISTER_PROPERTY(Addressbook, LastUpdated); |
@@ -384,60 +394,6 @@ SinkResource CardDavResource::create(const QByteArray &account) | |||
384 | return resource; | 394 | return resource; |
385 | } | 395 | } |
386 | 396 | ||
387 | template<> | ||
388 | QByteArray getTypeName<Contact>() | ||
389 | { | ||
390 | return "contact"; | ||
391 | } | ||
392 | |||
393 | template<> | ||
394 | QByteArray getTypeName<Addressbook>() | ||
395 | { | ||
396 | return "addressbook"; | ||
397 | } | ||
398 | |||
399 | template<> | ||
400 | QByteArray getTypeName<Event>() | ||
401 | { | ||
402 | return "event"; | ||
403 | } | ||
404 | |||
405 | template<> | ||
406 | QByteArray getTypeName<Todo>() | ||
407 | { | ||
408 | return "todo"; | ||
409 | } | ||
410 | |||
411 | template<> | ||
412 | QByteArray getTypeName<SinkResource>() | ||
413 | { | ||
414 | return "resource"; | ||
415 | } | ||
416 | |||
417 | template<> | ||
418 | QByteArray getTypeName<SinkAccount>() | ||
419 | { | ||
420 | return "account"; | ||
421 | } | ||
422 | |||
423 | template<> | ||
424 | QByteArray getTypeName<Identity>() | ||
425 | { | ||
426 | return "identity"; | ||
427 | } | ||
428 | |||
429 | template<> | ||
430 | QByteArray getTypeName<Mail>() | ||
431 | { | ||
432 | return "mail"; | ||
433 | } | ||
434 | |||
435 | template<> | ||
436 | QByteArray getTypeName<Folder>() | ||
437 | { | ||
438 | return "folder"; | ||
439 | } | ||
440 | |||
441 | QByteArrayList getTypeNames() | 397 | QByteArrayList getTypeNames() |
442 | { | 398 | { |
443 | static QByteArrayList types; | 399 | static QByteArrayList types; |