EBackend

EBackend — An abstract base class for backends

Synopsis

#include <libebackend/libebackend.h>

struct              EBackend;
gboolean            e_backend_get_online                (EBackend *backend);
void                e_backend_set_online                (EBackend *backend,
                                                         gboolean online);
ESource *           e_backend_get_source                (EBackend *backend);
gboolean            e_backend_authenticate_sync         (EBackend *backend,
                                                         ESourceAuthenticator *auth,
                                                         GCancellable *cancellable,
                                                         GError **error);
void                e_backend_authenticate              (EBackend *backend,
                                                         ESourceAuthenticator *auth,
                                                         GCancellable *cancellable,
                                                         GAsyncReadyCallback callback,
                                                         gpointer user_data);
gboolean            e_backend_authenticate_finish       (EBackend *backend,
                                                         GAsyncResult *result,
                                                         GError **error);

Object Hierarchy

  GObject
   +----EBackend
         +----ECollectionBackend

Properties

  "online"                   gboolean              : Read / Write / Construct
  "source"                   ESource*              : Read / Write / Construct Only

Description

An EBackend is paired with an ESource to facilitate performing actions on the local or remote resource described by the ESource.

In other words, whereas a certain backend type knows how to talk to a certain type of server or data store, the ESource fills in configuration details such as host name, user name, resource path, etc.

All EBackend instances are created by an EBackendFactory.

Details

struct EBackend

struct EBackend;

Contains only private data that should be read and manipulated using the functions below.

Since 3.4


e_backend_get_online ()

gboolean            e_backend_get_online                (EBackend *backend);

Returns the online state of backend: TRUE if backend is online, FALSE if offline. The online state of each backend is bound to the online state of the EDataFactory that created it.

backend :

an EBackend

Returns :

the online state

Since 3.4


e_backend_set_online ()

void                e_backend_set_online                (EBackend *backend,
                                                         gboolean online);

Sets the online state of backend: TRUE if backend is online, FALSE if offline. The online state of each backend is bound to the online state of the EDataFactory that created it.

backend :

an EBackend

online :

the online state

Since 3.4


e_backend_get_source ()

ESource *           e_backend_get_source                (EBackend *backend);

Returns the ESource to which backend is paired.

backend :

an EBackend

Returns :

the ESource to which backend is paired

Since 3.4


e_backend_authenticate_sync ()

gboolean            e_backend_authenticate_sync         (EBackend *backend,
                                                         ESourceAuthenticator *auth,
                                                         GCancellable *cancellable,
                                                         GError **error);

Convenience function providing a consistent authentication interface for backends running in either the registry service itself or a client process communicating with the registry service over D-Bus.

Authenticates backend's "source", using auth to handle authentication attempts. The backend and auth arguments may be one and the same if backend implements the ESourceAuthenticator interface. The operation loops until authentication is successful or the user aborts further authentication attempts. If an error occurs, the function will set error and return FALSE.

backend :

an EBackend

auth :

an ESourceAuthenticator

cancellable :

optional GCancellable object, or NULL

error :

return location for a GError, or NULL

Returns :

TRUE on success, FALSE on failure

Since 3.6


e_backend_authenticate ()

void                e_backend_authenticate              (EBackend *backend,
                                                         ESourceAuthenticator *auth,
                                                         GCancellable *cancellable,
                                                         GAsyncReadyCallback callback,
                                                         gpointer user_data);

Convenience function providing a consistent authentication interface for backends running in either the registry service itself or a client process communicating with the registry service over D-Bus.

Asynchronously authenticates backend's "source", using auth to handle authentication attempts. The backend and auth arguments may be one and the same if backend implements the ESourceAuthenticator interface. The operation loops until authentication is succesful or the user aborts further authentication attempts.

When the operation is finished, callback will be called. You can then call e_backend_authenticate_finish() to get the result of the operation.

backend :

an EBackend

auth :

an ESourceAuthenticator

cancellable :

optional GCancellable object, or NULL

callback :

a GAsyncReadyCallback to call when the request is satisfied

user_data :

data to pass to the callback function

Since 3.6


e_backend_authenticate_finish ()

gboolean            e_backend_authenticate_finish       (EBackend *backend,
                                                         GAsyncResult *result,
                                                         GError **error);

Finishes the operation started with e_backend_authenticate(). If an error occurred, the function will set error and return FALSE.

backend :

an EBackend

result :

a GAsyncResult

error :

return location for a GError, or NULL

Returns :

TRUE on success, FALSE on failure

Since 3.6

Property Details

The "online" property

  "online"                   gboolean              : Read / Write / Construct

Whether the backend is online.

Default value: TRUE


The "source" property

  "source"                   ESource*              : Read / Write / Construct Only

The data source being acted upon.