akonadi Module
Akonadi client library
Introduction
libakonadi is the client access library for using the Akonadi PIM data server. All processes accessing Akonadi, including those which communicate with a remote server (\ref akonadi_design_agents "agents"), are considered clients.
Functionality provided by libakonadi:
- libakonadi_jobs - libakonadi_monitor - libakonadi_collections - libakonadi_pimitems - libakonadi_serializer - libakonadi_resource
Accessing the Akonadi server
Accessing the Akonadi server is done using job-classes derived from Akonadi.Job. The communication channel with the server is provided by Akonadi.Session.
To do: Complete this section.
Change notifications
The Akonadi.Monitor class allows you to monitor specific resources, akonadi_concepts_collections "collections" and PIM items for changes.
Collection retrieval and manipulation
See akonadi_concepts_collections "Collection Concept" for more information about the concept of collections. A collection is represented by the Akonadi.Collection class.
Classes to retrieve information about collections:
- Akonadi.CollectionFetchJob - Akonadi.CollectionSelectJob - Akonadi.CollectionStatisticsJob
Classes to manipulate collections:
- Akonadi.CollectionCreateJob - Akonadi.CollectionModifyJob - Akonadi.CollectionDeleteJob
There is also Akonadi.CollectionModel, which is a self-updating model class which can be used in combination with Akonadi.CollectionView. Akonadi.CollectionFilterProxyModel can be used to limit a displayed collection tree to collections supporting a certain type of PIM items.
PIM item retrieval and manipulation
PIM items are represented by classes derived from Akonadi.Item. Items can be retrieved using job classes derived from Akonadi.ItemFetchJob.
The following classes are provided to manipulate PIM items:
- Akonadi.ItemCreateJob - Akonadi.ItemModifyJob - Akonadi.ItemDeleteJob - Akonadi.ExpungeJob
Akonadi.ItemModel provides a self-updating model class which can be used to display the content of a collection.
PIM item serializer
The class Akonadi.ItemSerializer is responsible for converting between the stored (binary) representation of a PIM item and the objects used to handle these items provided by the corresponding libraries (kabc, kcal, etc.).
Serializer plugins allow you to add support for new kinds of PIM items to Akonadi. Akonadi.ItemSerializerPlugin can be used as a base class for such a plugin.
Agents and Resources
The class Akonadi.AgentBase is the commen base class for all agents. It provides commonly needed functionality such as change monitoring and recording.
Resources are special type of agents, Akonadi.ResourceBase is the base class them. It provides the necessary interfaces to the server as well as many convenience functions to make implementing a new resource as easy as possible.
Namespaces
A | G | |
Akonadi | global |