summaryrefslogtreecommitdiff
path: root/docs/reference/libebackend
Commit message (Collapse)AuthorAgeFilesLines
* Makefile.am cleanups.Matthew Barnes2013-11-171-14/+18
| | | | | - Remove trailing tabs. - Add terminators to multi-line lists.
* ECollectionBackend: Add a read-only "proxy-resolver" property.Matthew Barnes2013-10-251-0/+1
| | | | | | | | | Tracks a GProxyResolver for the backend, which is actually another ESource with an ESourceProxy extension (if applicable to the backend). New functions: e_collection_backend_ref_proxy_resolver().
* Add indices for new symbols in 3.12 to API documentation.Matthew Barnes2013-10-011-0/+4
|
* Add ESoupAuthBearer.Matthew Barnes2013-07-093-0/+20
| | | | | | | | | | SoupAuth subclass for use with OAuth 2.0 HTTP authentication. See http://tools.ietf.org/html/rfc6750 EBackends should use e_source_get_oauth2_access_token() to obtain the access token and token expiry for an ESource, then pass them to e_soup_auth_bearer_set_access_token().
* Add indices for new symbols in 3.10 to API documentation.Matthew Barnes2013-03-171-0/+4
|
* Disable make check in docs/reference/libebackendTristan Van Berkom2013-03-161-1/+1
| | | | | | | | | Documentation in EDS is not good quality enough to require that the gtk-doc checks pass for distcheck. Commenting out the tests in this directory so that distcheck can pass without checking quality of docs (all other gtk-doc directories already dont set TESTS = $(GTKDOC_CHECK) ).
* Update API documentation.Matthew Barnes2013-03-021-0/+3
|
* EBackend: Add a read-only "main-context" property.Matthew Barnes2013-02-221-0/+1
| | | | | | | | This is the GMainContext on which to attach backend event sources. New functions: e_backend_ref_main_context()
* Documentation Makefiles: Added MKDB_OPTIONSTristan Van Berkom2013-02-221-0/+3
| | | | | | Added the MKDB_OPTIONS to all gtk-doc makefiles, this makes the <note><para></para></note> semantics in gtk-doc statements work properly (along with probably a few other features).
* EBackend: Add a "connectable" property (GSocketConnectable).Matthew Barnes2013-02-171-0/+2
| | | | | | | | | | This is the socket endpoint for the network service to which the EBackend is a client. This can be NULL if the EBackend does not use network sockets. The initial value of the "connectable" property is derived from the ESourceAuthentication extension of the EBackend's "source" property, if the extension is present.
* Add e_data_factory_ref_initable_backend().Matthew Barnes2013-02-041-0/+1
| | | | | | Similar to e_data_factory_ref_backend(), but allows for backends that implement the GInitable interface so they can fail gracefully if they are unable to initialize critical resources, such as a cache database.
* Deprecate e_authentication_session_new().Matthew Barnes2013-02-011-1/+1
| | | | Use e_source_registry_server_new_auth_session() instead.
* Add e_source_registry_server_new_auth_session().Matthew Barnes2013-02-011-0/+1
| | | | | Convenience function instantiates an appropriate authentication session type for the given data source UID.
* EServerSideSource: Add an "auth-session-type" property.Matthew Barnes2013-02-011-0/+2
| | | | | | | | | | This will allow modules -- particularly the online accounts modules -- to subclass and customize EAuthenticationSession, and then register the subclass to be used for data sources under their purview. Care must be taken when subclassing, however, to comply with the D-Bus interaction protocol that clients will be expecting, lest the client be left hanging during its authenticate() call.
* Deprecate e_source_registry_server_load_all().Matthew Barnes2013-01-211-1/+2
| | | | | | It was a mistake to encode this much file location policy directly into libebackend's API. Instead, evolution-source-registry.c will implement its own function that uses e_source_registry_server_load_resource().
* Add e_source_registry_server_load_resource().Matthew Barnes2013-01-211-0/+1
| | | | | | Loads data source key files from a GResource by enumerating the children at the given pathname and calling e_source_registry_server_load_file() on each child.
* Update API documentation.Matthew Barnes2013-01-121-0/+5
|
* EServerSideSource: Add "oauth2-support" property.Matthew Barnes2012-12-311-0/+2
| | | | | | | | | | | This is the object providing OAuth 2.0 support by implementing the EOAuth2Support interface. Setting this property to a non-NULL value automatically exports the OAuth2Support D-Bus interface. New functions: e_server_side_source_ref_oauth2_support() e_server_side_source_set_oauth2_support()
* libebackend: Add EOAuth2Support interface.Matthew Barnes2012-12-313-0/+18
| | | | | Standard server-side interface to be implemented by E-D-S modules providing OAuth 2.0 support for ESources.
* Add e_source_registry_server_find_extension().Matthew Barnes2012-12-311-0/+1
| | | | | | Server-side equivalent of e_source_registry_find_extension(). Use it in e_source_registry_server_ref_backend().
* Further API doc cleanups.Matthew Barnes2012-12-272-22/+21
|
* Deprecate E_AUTHENTICATION_SESSION_KEYRING_ERROR.Matthew Barnes2012-12-151-1/+1
|
* Update API documentation.Matthew Barnes2012-12-093-0/+71
|
* api-docs: Add indices for new symbols in 3.8Matthew Barnes2012-10-071-0/+4
|
* Add e_collection_backend_dup_resource_id().Matthew Barnes2012-08-211-0/+1
| | | | | | | Extracts the resource ID for a child source, which is supposed to be a stable and unique server-assigned identifier for the remote resource described by the child source. If the child source is not actually a child of the collection backend, the function returns NULL.
* Add e_collection_backend_claim_all_resources().Matthew Barnes2012-08-151-0/+1
| | | | | | | | | | | | | Claims all previously used sources that have not yet been claimed by e_collection_backend_new_child() and returns them in a GList. Note that previously used sources can only be claimed once, so subsequent calls to this function for backend will return NULL. The backend is then expected to compare the returned list with a current list of resources from a remote server, create new ESource instances as needed with e_collection_backend_new_child(), discard unneeded ESource instances with e_source_remove(), and export the remaining instances with e_source_registry_server_add_source().
* EServerSideSource: Support creating/deleting remote resources.Matthew Barnes2012-08-031-0/+2
| | | | | | | | | | | | | Add "remote-creatable" and "remote-deletable" properties which work the same as the "removable" and "writable" properties in terms of exporting and unexporting D-Bus interfaces. Add handlers for Create() and Delete() D-Bus method invocations, which call e_source_remote_create() and e_source_remote_delete() respectively. Override the remote_create_sync() and remote_delete_sync() methods to ferry the request to an associated ECollectionBackend (or set an error if there is no associated ECollectionBackend).
* ECollectionBackend: Add virual methods to create/delete resources.Matthew Barnes2012-08-031-0/+6
|
* Add e_source_registry_server_ref_backend().Matthew Barnes2012-08-031-0/+1
| | | | | | | Returns the ECollectionBackend for a given ESource, if one exists. This works for any collection member: the "collection" ESource itself as well as any of its hierarchical descendants.
* EBackend: Add authenticate() sync+async methods.Matthew Barnes2012-07-311-0/+3
| | | | | | | | | | These are convenience functions providing a consistent interface for backends running in either the registry service itself or a client process communicating with the registry service over D-Bus. Dynamically loaded backend classes need not implement these methods. They will inherit a suitable method implementation from ECalBackend, EBookBackend or ECollectionBackend.
* Replace e_source_registry_server_queue_auth_session().Matthew Barnes2012-07-281-1/+3
| | | | | | | | | | | | | | | | | | I realized ECollectionBackends are going to need a proper asynchronous authentication function so they know when authentication is achieved. e_source_registry_server_queue_auth_session() is a "fire-and-forget" function with no way for the caller to know if and when authentication is achieved. The replacement function, e_source_registry_server_authenticate_sync(), is a variation of e_source_registry_authenticate_sync() for use in the registry service itself. It takes an EAuthenticationSession instead of an ESource. Since this API has not yet seen a stable release, I'm going to forego deprecating the old function and just remove it. This is an API break, and the libebackend soname has been bumped accordingly.
* Deprecate EDbHash.Matthew Barnes2012-06-231-1/+1
| | | | Apparently nothing uses it anymore.
* EServerSideSource: Add an "exported" property.Matthew Barnes2012-06-211-0/+1
| | | | | | Read-only boolean property indicates whether the source has been exported over D-Bus. Basically just queries the registry server for itself.
* Add e_collection_backend_get_cache_dir().Matthew Barnes2012-06-121-0/+1
| | | | | | Returns the UID-based cache directory for an ECollectionBackend. This will tie into EServerSideSource's "write-directory" property.
* EServerSideSource: Add a "write-directory" property.Matthew Barnes2012-06-121-0/+2
| | | | | | | | | | | Defines the directory where data source changes are to be written, which may not be the same directory as it was originally read from. Defaults to the value returned by e_server_side_source_get_user_dir(). This allows an ECollectionBackend to override the default directory to keep key files for backend-created data sources separate from key files for user-created data sources.
* Implement single-file includes for all E-D-S libraries.Matthew Barnes2012-06-032-17/+5
| | | | | | | | | | | | | | The top-level headers are named after the library: #include <libebackend/libebackend.h> #include <libebook/libebook.h> #include <libecal/libecal.h> #include <libedata-book/libedata-book.h> #include <libedata-cal/libedata-cal.h> #include <libedataserver/libedataserver.h> #include <libedataserverui/libedataserverui.h> Including individual headers will cause a compilation error.
* Add a new "evolution-source-registry" D-Bus service.Matthew Barnes2012-06-033-0/+196
| | | | | This new service manages data source key files and serves them to clients, through the ESource and ESourceRegistry client-side APIs.
* libebackend documentation touch ups.Matthew Barnes2012-05-261-1/+9
|
* Add e_data_factory_ref_backend_factory().Matthew Barnes2012-04-171-0/+1
| | | | | | | | Just a way to get access to the EBackendFactory itself. Needed on the account-mgmt branch to check whether a suitable E-D-S backend factory is available to handle a given GNOME Online Account provider type such as "exchange".
* Remove EBackend::last-client-gone signal.Matthew Barnes2012-04-161-1/+0
| | | | | | | | | | | | The signal is no longer needed due to the previous EDataFactory commit. I also removed a couple unused "last_client_gone" function pointers in EBookBackendClass and ECalBackendClass just to get rid of all traces of the signal (and since I'm on an ABI breaking spree anyway). The API breakage should be contained within E-D-S. The ABI breakage will affect 3rd party extensions so the libedata-book and libedata-cal shared object names have been bumped for good measure.
* EDataFactory: Keep only weak references to backends.Matthew Barnes2012-04-161-1/+1
| | | | | | | | | | | | | | | | Have EDataFactory keep only weak references to the EBackend instances it creates. Then, when the last client connection to a backend closes, the backend finalizes automatically. No explicit action required. This breaks the API slightly by renaming e_data_factory_get_backend() to e_data_factory_ref_backend() to reflect the fact that a strong reference is now returned to the caller, and the caller must call g_object_unref() when finished with it. The impact of the API break should be contained within E-D-S. This uses the new GWeakRef API in GLib 2.32 to ensure thread-safety. The libebackend shared object name has already been bumped for 3.5.1.
* Remove EDataFactory's "online" property.Matthew Barnes2012-04-141-2/+0
| | | | | | | | | | | | Network monitoring no longer needs to be centralized in EDataFactory since we're using GNetworkMonitor, so remove EDataFactory's "online" property and public get/set functions. Instead, let each EBackend instance manage its own "online" state. Eventually we'll transition to more sophisticated network monitoring. This is an API break but not the first since 3.5.1 development began. libebackend's shared object name has already been bumped.
* Add EDBusServerExitCode enum type.Matthew Barnes2012-04-101-0/+3
|
* Add "new symbols in 3.6" indices to API docs.Matthew Barnes2012-04-101-0/+4
|
* Fix typo in libebackend docs.Matthew Barnes2012-04-101-1/+1
|
* Deprecate EOfflineListener.Matthew Barnes2012-03-311-1/+1
|
* Kill gtk-doc tmpl files.Matthew Barnes2011-11-0713-926/+0
| | | | Bump our gtk-doc requirement to 1.14 and use --flavour no-tmpl.
* EDBusServer: Add a use count, like in GApplication.Matthew Barnes2011-09-282-0/+18
| | | | | | | | | | | | | | | | | | | | | | Borrowing GApplication's use count concept for EDBusServer. It works somewhat like a reference count: when the use count drops to zero, the main loop terminates (in this case, after a 10 second delay). The use count usually follows the number of client connections. New functions to increment and decrement the use count: void e_dbus_server_hold (EDBusServer *server) void e_dbus_server_release (EDBusServer *server) This lets us handle the --keep-running option more gracefully by simply incrementing the server's use count directly in main(). For the record: I hemmed and hawed over a good while over whether to make EDBusServer inherit from GApplication or just copy the use count feature from GApplication. In the end, I still think GApplication is over-engineered and tries to serve too many different use cases, so for now I'd prefer to keep EDBusServer simple. I expect to revisit this decision at some point down the road.
* Add various base classes for backends and servers.Matthew Barnes2011-09-267-0/+356
| | | | | | | | | | | | | EBackend is an abstract base class for address book and calendar backends. EBackendFactory is an abstract base class for creating address book and calendar backends. It is also an EExtension that extends EDataFactory. EDBusServer is an abstract base class for an extensible D-Bus server. EDataFactory is a type of EDBusServer that exports connection objects for individual address books or calendars.
* Add EExtensible and EExtension.Matthew Barnes2011-09-265-0/+129
| | | | Copied from Evolution's libeutil.