Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
PDS Client 2.0 Design
The following design is just proposal to replace current Azigo3 architecture and extend PDS Client 2.0
The PDS Client is packaged as code library and triggered by separate operating system process with permissions of current logged-in user, so each user in the system has his own instance of PDS.
Architecture
The following three pictures show design of PDS Client 2.0. The given architecture is based on current components of Azigo3 and includes potentially new components. Communication with remote servers is the same as shown on PDS Client 2.0 architecture as well as internal communication between PDS Client low-level components.
1) First picture shows components grouped by process on user's machine:
2) On the second picture interactions between high-level components is represented:
3) After overview of current Azigo3 APIs was discovered that PDS client provides few logical groups of APIs and we can realize them as PDS Client's services as shown below.
It consists of the following C++ components:
- Components 2.0#PAUL - Personal Agent Utility Layer (PAUL) - the higher level logic of the PDS Client 2.0
- Components 2.0#Persona Data Provider - An API for the Persona Data Model 2.0
- Components 2.0#IPC Lib - planned.
- Components 2.0#Auth Client
- Components 2.0#IdAS Client C++ - communicates with Personal Data Store 2.0