diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-01-21 11:46:46 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-01-21 11:46:46 +0100 |
commit | 42d34555397dd62399233fac1fbfa216c255ef68 (patch) | |
tree | be2a6cd0442915bbc39243d8423d717c8727fa25 /docs | |
parent | bf96cfa0d75d256e036c76ec64f0f456014f2739 (diff) | |
download | kube-42d34555397dd62399233fac1fbfa216c255ef68.tar.gz kube-42d34555397dd62399233fac1fbfa216c255ef68.zip |
Akonadi2 -> Sink
Diffstat (limited to 'docs')
-rw-r--r-- | docs/design.md | 14 | ||||
-rw-r--r-- | docs/requirements.md | 4 |
2 files changed, 9 insertions, 9 deletions
diff --git a/docs/design.md b/docs/design.md index 38edde01..1330cc28 100644 --- a/docs/design.md +++ b/docs/design.md | |||
@@ -17,7 +17,7 @@ The overall architecture is split into three layers; Ui, Domain Logic and Infras | |||
17 | | | | 17 | | | |
18 | +--------------+------+------+ | 18 | +--------------+------+------+ |
19 | | | | | | 19 | | | | | |
20 | | Akonadi Next |Config| ... | | 20 | | Sink |Config| ... | |
21 | | | | | | 21 | | | | | |
22 | +--------------+------+------+ | 22 | +--------------+------+------+ |
23 | ``` | 23 | ``` |
@@ -28,7 +28,7 @@ The domain logic layer holds the application state. It povides models to access | |||
28 | 28 | ||
29 | The infrastructure layer provides: | 29 | The infrastructure layer provides: |
30 | 30 | ||
31 | * Data access (Akonadi Next) | 31 | * Data access (Sink) |
32 | * Configuration (Config files, etc.) | 32 | * Configuration (Config files, etc.) |
33 | * Various functionality provided by libraries (email sending, ldap, iTip handling, iCal implementation (kcalcore), vCard implementation, ...) | 33 | * Various functionality provided by libraries (email sending, ldap, iTip handling, iCal implementation (kcalcore), vCard implementation, ...) |
34 | Various bits of the infrastructure layer may be exchanged on different platforms, to i.e. integrate into native infrastructure providers on a platform. | 34 | Various bits of the infrastructure layer may be exchanged on different platforms, to i.e. integrate into native infrastructure providers on a platform. |
@@ -64,7 +64,7 @@ If nothing handles the action, the root component (the shell)can switch to the n | |||
64 | ## Third party users of components | 64 | ## Third party users of components |
65 | Since components are self contained and made available throuh the KPackage sytem, external applications can load fully functional Kube components. | 65 | Since components are self contained and made available throuh the KPackage sytem, external applications can load fully functional Kube components. |
66 | 66 | ||
67 | For example, the KDE calendar plasmoid could load the Kube Event Viewer component when available, and thus provide Kube's full functionality of that component, including all actions etc, without having to reimplement the Domain Logic (as is the case if only data access is provided through akonadi). | 67 | For example, the KDE calendar plasmoid could load the Kube Event Viewer component when available, and thus provide Kube's full functionality of that component, including all actions etc, without having to reimplement the Domain Logic (as is the case if only data access is provided through Sink). |
68 | 68 | ||
69 | ## Domain Logic | 69 | ## Domain Logic |
70 | 70 | ||
@@ -123,10 +123,10 @@ Notifications can be displayed in various places of the application. | |||
123 | The infrastructure layer interfaces with the rest of the system. It is the place where we can integrate with various native infrastructure parts. | 123 | The infrastructure layer interfaces with the rest of the system. It is the place where we can integrate with various native infrastructure parts. |
124 | The interface of the infrastructure layer, that is used by the domain logic, may not expose any implementation details of any infrastructure part, to ensure that all infrastructure parts are exchangable. | 124 | The interface of the infrastructure layer, that is used by the domain logic, may not expose any implementation details of any infrastructure part, to ensure that all infrastructure parts are exchangable. |
125 | 125 | ||
126 | ### Akonadi Next | 126 | ### Sink |
127 | Akonadi Next is used for primary data access and handles all synchronization. | 127 | Sink is used for primary data access and handles all synchronization. |
128 | 128 | ||
129 | Interactions with Akonadi Next involve: | 129 | Interactions with Sink involve: |
130 | 130 | ||
131 | * Adding/removing/configuring resources | 131 | * Adding/removing/configuring resources |
132 | * Triggering synchronization | 132 | * Triggering synchronization |
@@ -223,7 +223,7 @@ KubeComponents.MailView { | |||
223 | * Move/Copy/Delete folder | 223 | * Move/Copy/Delete folder |
224 | * Synchronize folder | 224 | * Synchronize folder |
225 | * Folder List Model | 225 | * Folder List Model |
226 | * Mixes akonadi next queries and subqueries (folder list with smart folders) | 226 | * Mixes Sink queries and subqueries (folder list with smart folders) |
227 | * name | 227 | * name |
228 | * statistics | 228 | * statistics |
229 | 229 | ||
diff --git a/docs/requirements.md b/docs/requirements.md index 75b43c8f..22de0cb5 100644 --- a/docs/requirements.md +++ b/docs/requirements.md | |||
@@ -63,7 +63,7 @@ Currently available dependencies: | |||
63 | ## Requirements | 63 | ## Requirements |
64 | * Each module has at least rudimentary tests that can then be extended | 64 | * Each module has at least rudimentary tests that can then be extended |
65 | * Tests need to be deterministic, no random timeouts to check if something already happened, only `QTRY_VERIFY` and alike is allowed. | 65 | * Tests need to be deterministic, no random timeouts to check if something already happened, only `QTRY_VERIFY` and alike is allowed. |
66 | * Clear layering. No depending on akonadi from everywhere. | 66 | * Clear layering. No depending on Sink from everywhere. |
67 | * Each module comes with a clear set of justified dependencies. | 67 | * Each module comes with a clear set of justified dependencies. |
68 | * Commented code is only allowed in conjunction with a task in phabricator. No dead/commented code. | 68 | * Commented code is only allowed in conjunction with a task in phabricator. No dead/commented code. |
69 | * Each module requires a clear interface that allows the module internals to be replaced eventually. | 69 | * Each module requires a clear interface that allows the module internals to be replaced eventually. |
@@ -220,4 +220,4 @@ These are the high-level aims that we have to work towards. This list is not a f | |||
220 | * Inventory of exiting kdepim: This will help to fill the functional blocks, and help in carving out the require featureset. | 220 | * Inventory of exiting kdepim: This will help to fill the functional blocks, and help in carving out the require featureset. |
221 | * Functional blocks: We need to identify the function blocks that we require, see to what extent they are already existing and how we can reuse what's there already. The functinal blocks should largely follow from the identified requirements. | 221 | * Functional blocks: We need to identify the function blocks that we require, see to what extent they are already existing and how we can reuse what's there already. The functinal blocks should largely follow from the identified requirements. |
222 | * Prototype the domain logic: We need to prototype the domain logic as envisioned to see wether that works out. This will be an ongoing process especially while working towards the first milestone. | 222 | * Prototype the domain logic: We need to prototype the domain logic as envisioned to see wether that works out. This will be an ongoing process especially while working towards the first milestone. |
223 | * Prototype with domain logic + akonadi next + trivial UI. Show that this can work in it's basics. | 223 | * Prototype with domain logic + Sink + trivial UI. Show that this can work in it's basics. |