Agenda is a time manager application for managing appointments and diary information.
In the Agenda application, data entered by the user is stored in a document, and is displayed via the user interface.
The agenda server is provided to manage concurrent access to an agenda file by more than one client. Such clients may include the Agenda application, synchronisation functions, as well as any third party applications. Without the agenda server, for instance, synchronisation of an agenda file could not take place if the file was in use. The application accessing the file would first have to be closed down, then later reopened after synchronisation had completed.
In this architecture, applications create an agenda model. Calls in the UI to access the Agenda file are routed to the appropriate server functions by the agenda model.
The following diagram summarises the architecture.
The documents used by Agenda are permanent file stores.