This is the Android specific package that supports UI activities and uses the underlying mUzima API to store and retrieve data resources from local repository, and to upload and download data from remote server. The package is structured into the following main components:
- Models: Comprise Objects that encapsulate data and logic for resources specific to Android. Some of the Objects extend mUzima API models and add logic specific to usage in the Android App.
- Controllers: Comprise controllers for each type of resource. The controllers act a coordinators within the Android App, and between the Android App and mUzima API, and are commonly used to request for various actions associated with either specific or all Objects of the given resource type, actions such as sending to storage, retrieval from storage, searching, counting, uploading and downloading.
- Services: Components used to handle requests for repetitive and potentially long running operations
- Views: This is where the User interface is implemented