KDE PIM/Akonadi Next/Client API: Difference between revisions
Appearance
< KDE PIM | Akonadi Next
Cmollekopf (talk | contribs) Created page with " Loading: * Set load(Query) => A query is executed and a reactive set is returned. * TreeSet loadTree(Query) => Additionally to the query a tree structure is available in the ..." |
Cmollekopf (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
The client API consists of: | |||
* A modification API for messages (Create/Modify/Delete) | |||
* A query API to retrieve messages | |||
* A resource facade to abstract the resource implementation details | |||
* A set of standardized domain types | |||
=== Domain Types === | |||
A set of standardized domain types is defined. This is necessary to decouple applications from resources (so a calendar can access events from all resources). The purpose of these domain types are strictly the interface and they are not supposed to be used by applications directly, or to be restricted by any other specifications (such as ical). By nature these types will be part of the evolving interface, and will need to be adjusted for every new property that an application must understand. | |||
=== Store Facade === | === Store Facade === | ||
Line 87: | Line 12: | ||
* store access (one store could use a database, and another one plain files) | * store access (one store could use a database, and another one plain files) | ||
* message type (flatbuffers, ...) | * message type (flatbuffers, ...) | ||
* indexes | |||
* | |||
Revision as of 21:00, 1 December 2014
The client API consists of:
- A modification API for messages (Create/Modify/Delete)
- A query API to retrieve messages
- A resource facade to abstract the resource implementation details
- A set of standardized domain types
Domain Types
A set of standardized domain types is defined. This is necessary to decouple applications from resources (so a calendar can access events from all resources). The purpose of these domain types are strictly the interface and they are not supposed to be used by applications directly, or to be restricted by any other specifications (such as ical). By nature these types will be part of the evolving interface, and will need to be adjusted for every new property that an application must understand.
Store Facade
The store is always accessed through a store-type specific facade, which hides:
- store access (one store could use a database, and another one plain files)
- message type (flatbuffers, ...)
- indexes