Evolution-Data-Server Reference Manual

Reference Manual for

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
    ESourceAutoconfig — ESource extension for autoconfig settings
    ESourceExtension — Base class for ESource extensions
    ESourceBackend — Base class for backend-based data sources
    ESourceSelectable — Base class for selectable data sources
    ESourceAddressBook — ESource extension for an address book
    ESourceAlarms — ESource extension for alarm state
    ESourceAuthentication — ESource extension for authentication settings
    ESourceAutocomplete — ESource extension for autocomplete settings
    ESourceCalendar — ESource extension for a calendar
    ESourceCamel — ESource extension for CamelSettings
    ESourceCollection — ESource extension for grouping related resources
    ESourceContacts
    ESourceGoa — ESource extension for GNOME Online Accounts
    ESourceLDAP
    ESourceLocal
    ESourceMailAccount — ESource extension for an email account
    ESourceMailComposition — ESource extension for mail composition settings
    ESourceMailIdentity — ESource extension for an email identity
    ESourceMailSignature — ESource extension for email signatures
    ESourceMailSubmission — ESource extension for submitting emails
    ESourceMailTransport — ESource extension for an email transport
    ESourceMemoList — ESource extension for a memo list
    ESourceMDN — ESource extension for MDN settings
    ESourceOffline — ESource extension for offline settings
    ESourceOpenPGP — ESource extension for OpenPGP settings
    ESourceProxy — ESource extension for network proxy settings
    ESourceRefresh — ESource extension for refresh settings
    ESourceResource — ESource extension for a remote resource
    ESourceRevisionGuards — ESource extension to configure revision guards
    ESourceSecurity — ESource extension for security settings
    ESourceSMIME — ESource extension for S/MIME settings
    ESourceTaskList — ESource extension for a task list
    ESourceUoa — ESource extension for Ubuntu Online Accounts
    ESourceWebdav — ESource extension for WebDAV settings
    ESourceWebDAVNotes — WebDAV Notes specific settings
    ESourceWeather
    ESourceBackendSummarySetup — ESource 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
    e-book-utils
    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
    e-cal-component-alarm — An ECalComponentAlarm structure
    e-cal-component-alarm-instance — An ECalComponentAlarmInstance structure
    e-cal-component-alarm-repeat — An ECalComponentAlarmRepeat structure
    e-cal-component-alarms — An ECalComponentAlarms structure
    e-cal-component-alarm-trigger — An ECalComponentAlarmTrigger structure
    e-cal-component-attendee — An ECalComponentAttendee structure
    e-cal-component-datetime — An ECalComponentDateTime structure
    e-cal-component-id — An ECalComponentId structure
    e-cal-component-organizer — An ECalComponentOrganizer structure
    e-cal-component-parameter-bag — An ECalComponentParameterBag structure
    e-cal-component-period — An ECalComponentPeriod structure
    e-cal-component-property-bag — An ECalComponentPropertyBag structure
    e-cal-component-range — An ECalComponentRange structure
    e-cal-component-text — An ECalComponentText structure
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
    ECache — An SQLite data cache
    ECacheKeys — A table wrapper for key-value reference-counted data
    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
    EWebDAVCollectionBackend
  Addressbook Backend Classes
    EBookBackend — An abstract class for implementing addressbook backends
    EBookBackendSync — An abstract class for implementing synchronous addressbook backends
    EBookBackendFactory — The factory for creating new addressbooks
    EBookBackendSExp — A utility for comparing EContact objects or vcards with search expressions.
    EBookCache — An ECache descendant for addressbooks
    EBookMetaBackend — An EBookBackend descendant for book backends
    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
    EDataBookCursorCache — The SQLite cursor implementation
    EDataBookCursorSqlite — The SQLite cursor implementation
    EDataBookFactory — The main addressbook server object
    EDataBookView — A server side object for issuing view notifications
    EDataBookViewWatcherCache — Watch EDataBookView changes with contacts in EBookCache
    EDataBookViewWatcherMemory — Watch EDataBookView changes with contacts in memory
    EDataBookViewWatcherSqlite — Watch EDataBookView changes with contacts in EBookSqlite
    ESubprocessBookFactory
    ESystemLocaleWatcher
  Calendar Backend Classes
    ECalBackend — An abstract class for implementing calendar backends
    ECalBackendFactory — The factory for creating new calendars
    ECalBackendSExp — A utility for comparing ECalComponent(s) with search expressions.
    ECalBackendSync — A convenience subclass of ECalBackend
    EIntervalTree — A utility for calculating intervals and recurrances
    ECalCache — An ECache descendant for calendars
    ECalMetaBackend — An ECalBackend descendant for calendar backends
    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
    ECacheReaper
    e-cache-reaper-utils
    e-collator — Collation services for locale sensitive sorting
    e-debug-log
    e-error
    e-flag
    e-free-form-exp
    e-gdata-query — A GData (Google Data) query parameters
    EGDataSession — A GData (Google Data) session
    e-json-utils — A set of JSON utility functions
    e-memory
    e-ms-oapxbc — Interact with a locally running Microsoft OAuth2 broker service
    e-named-parameters — A structure to hold named parameters
    ENetworkMonitor
    e-operation-pool
    e-secret-store — Interface to store secrets
    ESExp
    ESoupSession — A SoupSession descendant
    e-soup-ssl-trust — SSL certificate trust handling for WebDAV sources
    ESourceRegistryWatcher — Watch changes in ESource-s
    e-time-utils
    e-uid
    e-webdav-discover
    EWebDAVSession — A WebDAV, CalDAV and CardDAV session
    EXmlDocument — An XML document wrapper
    e-xml-hash-utils
    e-xml-utils
    eds-version
  Built-in OAuth 2.0 authentication
    EOAuth2Service — An interface for an OAuth2 service
    EOAuth2Services — An extensible object holding all known OAuth2 services
    EOAuth2ServiceBase — An abstract base class for EOAuth2Service implementations
    EOAuth2ServiceGoogle
    EOAuth2ServiceOutlook
    EOAuth2ServiceYahoo
  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-enums
    e-book-contacts-utils
    EBookIndicesUpdater — Handle EBookIndices updates
    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-enums
    EReminderWatcher — Calendar reminder watcher
  Credentials
    ESourceCredentialsProvider
    ESourceCredentialsProviderImpl
    ESourceCredentialsProviderImplPassword
    ESourceCredentialsProviderImplOAuth2
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
    e-url
  Client Deprecated Classes
    EBook
    EBookView
    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.56
Index of new symbols in 3.54
Index of new symbols in 3.52
Index of new symbols in 3.50
Index of new symbols in 3.48
Index of new symbols in 3.46
Index of new symbols in 3.44
Index of new symbols in 3.42
Index of new symbols in 3.40
Index of new symbols in 3.38
Index of new symbols in 3.36
Index of new symbols in 3.34
Index of new symbols in 3.32
Index of new symbols in 3.30
Index of new symbols in 3.28
Index of new symbols in 3.26
Index of new symbols in 3.24
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

Generated by GTK-Doc V1.34.0