Reference Manual for evolution-data-server 3.22.0

Abstract

Evolution-Data-Server is a collection of libraries and services for storing addressbooks and calendars. In this reference manual you will find documentation on using the client libraries as well as implementing backends for calendars and addressbooks.

The documentation below is organized by subject material, below is an abstract description of each component in the documentation.

  • Data Sources and Extensions

    Data sources are an abstract concept for describing sources of various data types. Addressbook and Calendars must be accessed by their ESource, but the ESource is also relevant for backends to access various internal data types. This section also includes documentation on the various existing ESourceExtensions which are important for configuring the functionality of a data source.

  • Client Programming Interfaces

    This section contains the main interfaces useful for interacting with Evolution Data Server in your application

  • Backend Programming Interfaces

    This section contains the main interfaces useful for implementing Addressbook and Calendar backends.

  • Miscellaneous Utilities

    A collection of utilities which can be useful to both clients and backends.

  • Examples

    Working examples of how to use Evolution Data Server.

  • Unit Testing

    A description of how to test Evolution Data Server itself, and how to use the general unit test fixture.

  • Deprecated Classes

    A list of all deprecated classes in Evolution Data Server.


I. Data Sources and Extensions
Data Sources
ESource — Hierarchical data sources
e-source-enums
ESourceRegistry — A central repository for data sources
Data Source Extensions
ESourceExtension — Base class for ESource extensions
ESourceBackend — Base class for backend-based data sources
ESourceSelectable — Base class for selectable data sources
ESourceAddressBookESource extension for an address book
ESourceAlarmsESource extension for alarm state
ESourceAuthenticationESource extension for authentication settings
ESourceAutocompleteESource extension for autocomplete settings
ESourceTaskListESource extension for a calendar
ESourceCamelESource extension for CamelSettings
ESourceCollectionESource extension for grouping related resources
ESourceContacts
ESourceGoaESource extension for GNOME Online Accounts
ESourceLDAP
ESourceLocal
ESourceMailAccountESource extension for an email account
ESourceMailCompositionESource extension for mail composition settings
ESourceMailIdentityESource extension for an email identity
ESourceMailSignatureESource extension for email signatures
ESourceMailSubmissionESource extension for submitting emails
ESourceMailTransportESource extension for an email transport
ESourceMDNESource extension for MDN settings
ESourceOfflineESource extension for offline settings
ESourceOpenPGPESource extension for OpenPGP settings
ESourceProxyESource extension for network proxy settings
ESourceRefreshESource extension for refresh settings
ESourceResourceESource extension for a remote resource
ESourceRevisionGuardsESource extension to configure revision guards
ESourceSecurityESource extension for security settings
ESourceSMIMEESource extension for S/MIME settings
ESourceUoaESource extension for Ubuntu Online Accounts
ESourceWebdavESource extension for WebDAV settings
ESourceWeather
ESourceBackendSummarySetupESource extension to configure summary fields
II. Client Programming Interfaces
Shared Interaces
EClient — Base class for client handles
Addressbook
EBookClient — Accessing and modifying an addressbook
EBookClientView — Recieving change notifications on addressbooks
EBookClientCursor — An addressbook cursor
e-book-query — Querying and filtering contacts in an addressbook
EVCard — vCard parsing and interpretation
EContact — A convenience interface for interacting with contacts
Calendar
ECalClient — Accessing and modifying a calendar
ECalClientView — Recieving change notifications on calendars
ECalComponent — A convenience interface for interacting with events
III. Backend Programming Interfaces
Abstract Classes for Backends
EBackend — An abstract base class for backends
e-backend-enums
EBackendFactory — An abstract base class for backend factories
EDataFactory — An abstract base class for a backend-based server
EDBusServer — An abstract base class for a D-Bus server
EExtensible — An interface for extending objects
EExtension — An abstract base class for extensions
EModule — A module loader
ESubprocessFactory — An abstract base class for a backend-subprocess server
Registry Service Classes
ECollectionBackend — A base class for a data source collection backend
ECollectionBackendFactory — A base class for a data source collection backend factory
EOAuth2Support — An interface for OAuth 2.0 support
EServerSideSource — A server-side data source
EServerSideSourceCredentialsProvider
ESourceRegistryServer — Server-side repository for data sources
Addressbook Backend Classes
EBookBackend — An abstract class for implementing addressbook backends
EBookBackendFactory — The factory for creating new addressbooks
EBookBackendSExp — A utility for comparing EContacts or vcards with search expressions.
EBookSqlite — An SQLite storage facility for addressbooks
EDataBook — Server side D-Bus layer to communicate with addressbooks
EDataBookDirect — An interface for implementing Direct Read Access
EDataBookCursor — The abstract cursor API
EDataBookCursorSqlite — The SQLite cursor implementation
EDataBookFactory — The main addressbook server object
EDataBookView — A server side object for issuing view notifications
ESubprocessBookFactory
Calendar Backend Classes
ECalBackend — An abstract class for implementing calendar backends
ECalBackendCache — A helper class for caching calendar components
ECalBackendFactory — The factory for creating new calendars
ECalBackendSExp — A utility for comparing ECalComponents with search expressions.
ECalBackendStore — A helper class for storing calendar components
ECalBackendSync — A convenience subclass of ECalBackend
EIntervalTree — A utility for calculating intervals and recurrances
EDataCal — Server side D-Bus layer to communicate with calendars
EDataCalFactory — The main calendar server object
EDataCalView — A server side object for issuing view notifications
ESubprocessCalFactory
IV. Miscellaneous Utilities
Available for clients and backends
e-data-server-util
e-categories
Cancellable Locks — locks, which can listen for a GCancellable during lock call
e-cache-reaper
e-cache-reaper-utils
e-collator — Collation services for locale sensitive sorting
e-debug-log
e-error
e-flag
e-free-form-exp
EGdbusAsyncOpKeeper
e-memory
ENetworkMonitor
e-operation-pool
e-secret-store — Interface to store secrets
ESExp
e-soup-ssl-trust — SSL certificate trust handling for WebDAV sources
e-time-utils
e-uid
e-webdav-discover
e-xml-hash-utils
e-xml-utils
eds-version
Available only for backends
EFileCache — Simple file-based hash table for strings
e-db3-utils — Utilities for Berkeley DB databases
ESoupAuthBearer — OAuth 2.0 support for libsoup
e-sqlite3-vfs
EUserPrompter — Manages user prompts over DBus
EUserPrompterServer — Server-side user prompter
EUserPrompterServerExtension — Extension for a server-side user prompter
Addressbook related utilities
e-book-contacts-types
EDestination
e-address-western
e-name-western
e-phone-number — Phone number support
Calendar related utilities
e-cal-recur
e-cal-time-util
e-cal-util
e-cal-system-timezone
e-cal-check-timezones
ETimezoneCache — An interface for caching time zone data
e-cal-backend-util
e-cal-types
Credentials
ESourceCredentialsProvider
ESourceCredentialsProviderImpl
ESourceCredentialsProviderImplPassword
ESourceCredentialsProviderImplGoogle
V. Examples
Contacts Browser Example — Explanation of how to create a scrolling window listing contacts in alphabetical order.
VI. Unit Testing
e-test-server-utils — A utility for unit testing EDS
VII. Deprecated Classes
Common Deprecated Classes
e-credentials
EIterator
EList
EListIterator
EProxy
e-url
Client Deprecated Classes
EBook
EBookView
ECal
ECalView
e-book-types
Backend Deprecated Classes
e-dbhash — Simple DB-based hash table for strings
EOfflineListener — Tracks Evolution's online/offline state
EBookBackendSqliteDB — An SQLite storage facility for addressbooks
EBookBackendSummary — A utility for storing contact data and searching for contacts
EBookBackendCache — A utility for storing contact data and searching for contacts
e-book-backend-db-cache — A Berkeley DB cache facility for addressbooks
Index
Index of deprecated symbols
Index of new symbols in 3.22
Index of new symbols in 3.20
Index of new symbols in 3.18
Index of new symbols in 3.16
Index of new symbols in 3.12
Index of new symbols in 3.10
Index of new symbols in 3.8
Index of new symbols in 3.6
Index of new symbols in 3.4
Index of new symbols in 3.2
Index of new symbols in 3.0
Index of new symbols in 2.32
Index of new symbols in 2.30
Index of new symbols in 2.28
Index of new symbols in 2.26
Index of new symbols in 2.24
Index of new symbols in 2.22
Index of new symbols in 1.12
Annotation Glossary