### Class

# EDataServer Client

since: 3.2

#### Description [src]

    abstract class EDataServer.Client : GObject.Object
    {
      /* No available fields */
    }

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

Available since: 3.2

#### Hierarchy

#### Ancestors

- GObject

#### Functions

###### e_client_error_create

No description available.

since: 3.2

###### e_client_error_create_fmt

Similar as e_client_error_create(), only here, instead of custom_msg, is used a `printf()` format to create a custom message for the error.

since: 3.34

###### e_client_error_quark

No description available.

###### e_client_error_to_string

Get localized human readable description of the given error code.

since: 3.2

###### e_client_util_copy_object_slist

Copies a `GSList` of `GObject`s to the end of `copy_to`.

deprecated: 3.8 since: 3.2

###### e_client_util_copy_string_slist

Copies the `GSList` of strings to the end of `copy_to`.

deprecated: 3.8 since: 3.2

###### e_client_util_free_object_slist

Calls `g_object_unref()` on each member of `objects` and then frees `objects` itself.

deprecated: 3.8 since: 3.2

###### e_client_util_free_string_slist

Frees memory previously allocated by e_client_util_strv_to_slist().

deprecated: 3.8 since: 3.2

###### e_client_util_parse_comma_strings

Parses comma-separated list of values into `GSList`.

since: 3.2

###### e_client_util_slist_to_strv

Convert a list of strings into a `NULL`-terminated array of strings.

deprecated: 3.8 since: 3.2

###### e_client_util_strv_to_slist

Convert a `NULL`-terminated array of strings to a list of strings.

deprecated: 3.8 since: 3.2

###### e_client_util_unwrap_dbus_error

The function takes a `dbus_error` and tries to find a match in `known_errors` for it, if it is a G_IO_ERROR, G_IO_ERROR_DBUS_ERROR. If it is anything else then the `dbus_error` is moved to `client_error`.

deprecated: 3.8 since: 3.2

#### Instance methods

###### e_client_cancel_all

Cancels all pending operations started on `client`.

deprecated: 3.8 since: 3.2

###### e_client_check_capability

Check if backend supports particular capability. To get all capabilities use e_client_get_capabilities().

since: 3.2

###### e_client_check_refresh_supported

Checks whether a client supports explicit refreshing (see e_client_refresh()).

since: 3.2

###### e_client_dup_bus_name

Returns a D-Bus bus name that will be used to connect the client to the backend subprocess.

since: 3.16

###### e_client_get_backend_property

Queries `client`‘s backend for a property of name `prop_name`. The call is finished by `e_client_get_backend_property_finish()` from the `callback`.

since: 3.2

###### e_client_get_backend_property_finish

Finishes previous call of e_client_get_backend_property().

since: 3.2

###### e_client_get_backend_property_sync

Queries `client`‘s backend for a property of name `prop_name`.

since: 3.2

###### e_client_get_capabilities

Get list of strings with capabilities advertised by a backend. This list, together with inner strings, is owned by the `client`. To check for individual capabilities use e_client_check_capability().

since: 3.2

###### e_client_get_source

Get the `ESource` that this client has assigned.

since: 3.2

###### e_client_is_online

Check if this `client` is connected.

since: 3.2

###### e_client_is_opened

Check if this `client` is fully opened. This includes everything from `e_client_open()` call up to the authentication, if required by a backend. Client cannot do any other operation during the opening phase except of authenticate or cancel it. Every other operation results in an `E_CLIENT_ERROR_BUSY` error.

deprecated: 3.8 since: 3.2

###### e_client_is_readonly

Check if this `client` is read-only.

since: 3.2

###### e_client_open

Opens the `client`, making it ready for queries and other operations. The call is finished by `e_client_open_finish()` from the `callback`.

deprecated: 3.8 since: 3.2

###### e_client_open_finish

Finishes previous call of e_client_open().

deprecated: 3.8 since: 3.2

###### e_client_open_sync

Opens the `client`, making it ready for queries and other operations.

deprecated: 3.8 since: 3.2

###### e_client_ref_main_context

Returns the `GMainContext` on which event sources for `client` are to be attached.

since: 3.8

###### e_client_refresh

Initiates refresh on the `client`. Finishing the method doesn’t mean that the refresh is done, backend only notifies whether it started refreshing or not. Use `e_client_check_refresh_supported()` to check whether the backend supports this method. The call is finished by `e_client_refresh_finish()` from the `callback`.

since: 3.2

###### e_client_refresh_finish

Finishes previous call of e_client_refresh().

since: 3.2

###### e_client_refresh_sync

Initiates refresh on the `client`. Finishing the method doesn’t mean that the refresh is done, backend only notifies whether it started refreshing or not. Use `e_client_check_refresh_supported()` to check whether the backend supports this method.

since: 3.2

###### e_client_remove

Removes the backing data for this `EClient`. For example, with the file backend this deletes the database file. You cannot get it back! The call is finished by `e_client_remove_finish()` from the `callback`.

deprecated: 3.6 since: 3.2

###### e_client_remove_finish

Finishes previous call of e_client_remove().

deprecated: 3.6 since: 3.2

###### e_client_remove_sync

Removes the backing data for this `EClient`. For example, with the file backend this deletes the database file. You cannot get it back!

deprecated: 3.6 since: 3.2

###### e_client_retrieve_capabilities

Initiates retrieval of capabilities on the `client`. This is usually required only once, after the `client` is opened. The returned value is cached and any subsequent call of `e_client_get_capabilities()` and `e_client_check_capability()` is using the cached value. The call is finished by `e_client_retrieve_capabilities_finish()` from the `callback`.

deprecated: 3.8 since: 3.2

###### e_client_retrieve_capabilities_finish

Finishes previous call of e_client_retrieve_capabilities(). Returned value of `capabilities` should be freed with g_free(), when no longer needed.

deprecated: 3.8 since: 3.2

###### e_client_retrieve_capabilities_sync

Initiates retrieval of capabilities on the `client`. This is usually required only once, after the `client` is opened. The returned value is cached and any subsequent call of `e_client_get_capabilities()` and `e_client_check_capability()` is using the cached value. Returned value of `capabilities` should be freed with g_free(), when no longer needed.

deprecated: 3.8 since: 3.2

###### e_client_retrieve_properties

Asynchronously retrieves `client` properties to match server-side values, without waiting for the D-Bus property change notifications delivery.

since: 3.16

###### e_client_retrieve_properties_finish

Finishes the operation started with e_client_retrieve_properties().

since: 3.16

###### e_client_retrieve_properties_sync

Retrieves `client` properties to match server-side values, without waiting for the D-Bus property change notifications delivery.

since: 3.16

###### e_client_set_backend_property

Sets `client`‘s backend property of name `prop_name` to value `prop_value`. The call is finished by `e_client_set_backend_property_finish()` from the `callback`.

deprecated: 3.8 since: 3.2

###### e_client_set_backend_property_finish

Finishes previous call of e_client_set_backend_property().

deprecated: 3.8 since: 3.2

###### e_client_set_backend_property_sync

Sets `client`‘s backend property of name `prop_name` to value `prop_value`.

deprecated: 3.8 since: 3.2

###### e_client_set_bus_name

Sets a D-Bus bus name that will be used to connect the client to the backend subprocess.

since: 3.16

###### e_client_unwrap_dbus_error

Unwraps D-Bus error to local error. `dbus_error` is automatically freed. `dbus_erorr` and `out_error` can point to the same variable.

deprecated: 3.8 since: 3.2

###### e_client_wait_for_connected

Asynchronously waits until the `client` is connected (according to `ESource`::connection-status property), but not longer than `timeout_seconds`.

since: 3.16

###### e_client_wait_for_connected_finish

Finishes previous call of e_client_wait_for_connected().

since: 3.16

###### e_client_wait_for_connected_sync

Synchronously waits until the `client` is connected (according to `ESource`::connection-status property), but not longer than `timeout_seconds`.

since: 3.16

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### EDataServer.Client:capabilities

The capabilities of this client.

###### EDataServer.Client:main-context

The main loop context in which notifications for this client will be delivered.

###### EDataServer.Client:online

Whether this client’s backing data is online.

###### EDataServer.Client:opened

Whether this client is open and ready to use.

deprecated: 3.8

###### EDataServer.Client:readonly

Whether this client’s backing data is readonly.

###### EDataServer.Client:source

The `ESource` for which this client was created.

#### Signals

###### EDataServer.Client::backend-died

No description available.

###### EDataServer.Client::backend-error

No description available.

###### EDataServer.Client::backend-property-changed

No description available.

###### EDataServer.Client::opened

No description available.

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct EDataServerClientClass {
      GDBusProxy* (* get_dbus_proxy) (
        EClient* client
      );
      void (* unwrap_dbus_error) (
        EClient* client,
        GError* dbus_error,
        GError** error
      );
      void (* retrieve_capabilities) (
        EClient* client,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* retrieve_capabilities_finish) (
        EClient* client,
        GAsyncResult* result,
        gchar** capabilities,
        GError** error
      );
      gboolean (* retrieve_capabilities_sync) (
        EClient* client,
        gchar** capabilities,
        GCancellable* cancellable,
        GError** error
      );
      void (* get_backend_property) (
        EClient* client,
        const gchar* prop_name,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* get_backend_property_finish) (
        EClient* client,
        GAsyncResult* result,
        gchar** prop_value,
        GError** error
      );
      gboolean (* get_backend_property_sync) (
        EClient* client,
        const gchar* prop_name,
        gchar** prop_value,
        GCancellable* cancellable,
        GError** error
      );
      void (* set_backend_property) (
        EClient* client,
        const gchar* prop_name,
        const gchar* prop_value,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* set_backend_property_finish) (
        EClient* client,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* set_backend_property_sync) (
        EClient* client,
        const gchar* prop_name,
        const gchar* prop_value,
        GCancellable* cancellable,
        GError** error
      );
      void (* open) (
        EClient* client,
        gboolean only_if_exists,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* open_finish) (
        EClient* client,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* open_sync) (
        EClient* client,
        gboolean only_if_exists,
        GCancellable* cancellable,
        GError** error
      );
      void (* remove) (
        EClient* client,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* remove_finish) (
        EClient* client,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* remove_sync) (
        EClient* client,
        GCancellable* cancellable,
        GError** error
      );
      void (* refresh) (
        EClient* client,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* refresh_finish) (
        EClient* client,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* refresh_sync) (
        EClient* client,
        GCancellable* cancellable,
        GError** error
      );
      gboolean (* retrieve_properties_sync) (
        EClient* client,
        GCancellable* cancellable,
        GError** error
      );
      void (* opened) (
        EClient* client,
        const GError* error
      );
      void (* backend_error) (
        EClient* client,
        const gchar* error_msg
      );
      void (* backend_died) (
        EClient* client
      );
      void (* backend_property_changed) (
        EClient* client,
        const gchar* prop_name,
        const gchar* prop_value
      );

    }

No description available.

###### Class members

`get_dbus_proxy: GDBusProxy* (* get_dbus_proxy) ( EClient* client )`

  No description available.

`unwrap_dbus_error: void (* unwrap_dbus_error) ( EClient* client, GError* dbus_error, GError** error )`

  No description available.

`retrieve_capabilities: void (* retrieve_capabilities) ( EClient* client, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`retrieve_capabilities_finish: gboolean (* retrieve_capabilities_finish) ( EClient* client, GAsyncResult* result, gchar** capabilities, GError** error )`

  No description available.

`retrieve_capabilities_sync: gboolean (* retrieve_capabilities_sync) ( EClient* client, gchar** capabilities, GCancellable* cancellable, GError** error )`

  No description available.

`get_backend_property: void (* get_backend_property) ( EClient* client, const gchar* prop_name, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`get_backend_property_finish: gboolean (* get_backend_property_finish) ( EClient* client, GAsyncResult* result, gchar** prop_value, GError** error )`

  No description available.

`get_backend_property_sync: gboolean (* get_backend_property_sync) ( EClient* client, const gchar* prop_name, gchar** prop_value, GCancellable* cancellable, GError** error )`

  No description available.

`set_backend_property: void (* set_backend_property) ( EClient* client, const gchar* prop_name, const gchar* prop_value, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`set_backend_property_finish: gboolean (* set_backend_property_finish) ( EClient* client, GAsyncResult* result, GError** error )`

  No description available.

`set_backend_property_sync: gboolean (* set_backend_property_sync) ( EClient* client, const gchar* prop_name, const gchar* prop_value, GCancellable* cancellable, GError** error )`

  No description available.

`open: void (* open) ( EClient* client, gboolean only_if_exists, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`open_finish: gboolean (* open_finish) ( EClient* client, GAsyncResult* result, GError** error )`

  No description available.

`open_sync: gboolean (* open_sync) ( EClient* client, gboolean only_if_exists, GCancellable* cancellable, GError** error )`

  No description available.

`remove: void (* remove) ( EClient* client, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`remove_finish: gboolean (* remove_finish) ( EClient* client, GAsyncResult* result, GError** error )`

  No description available.

`remove_sync: gboolean (* remove_sync) ( EClient* client, GCancellable* cancellable, GError** error )`

  No description available.

`refresh: void (* refresh) ( EClient* client, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`refresh_finish: gboolean (* refresh_finish) ( EClient* client, GAsyncResult* result, GError** error )`

  No description available.

`refresh_sync: gboolean (* refresh_sync) ( EClient* client, GCancellable* cancellable, GError** error )`

  No description available.

`retrieve_properties_sync: gboolean (* retrieve_properties_sync) ( EClient* client, GCancellable* cancellable, GError** error )`

  No description available.

`opened: void (* opened) ( EClient* client, const GError* error )`

  No description available.

`backend_error: void (* backend_error) ( EClient* client, const gchar* error_msg )`

  No description available.

`backend_died: void (* backend_died) ( EClient* client )`

  No description available.

`backend_property_changed: void (* backend_property_changed) ( EClient* client, const gchar* prop_name, const gchar* prop_value )`

  No description available.

#### Virtual methods

###### EDataServer.ClientClass.backend_died

No description available.

###### EDataServer.ClientClass.backend_error

No description available.

###### EDataServer.ClientClass.backend_property_changed

No description available.

###### EDataServer.ClientClass.get_backend_property

Queries `client`‘s backend for a property of name `prop_name`. The call is finished by `e_client_get_backend_property_finish()` from the `callback`.

since: 3.2

###### EDataServer.ClientClass.get_backend_property_finish

Finishes previous call of e_client_get_backend_property().

since: 3.2

###### EDataServer.ClientClass.get_backend_property_sync

Queries `client`‘s backend for a property of name `prop_name`.

since: 3.2

###### EDataServer.ClientClass.get_dbus_proxy

No description available.

###### EDataServer.ClientClass.open

Opens the `client`, making it ready for queries and other operations. The call is finished by `e_client_open_finish()` from the `callback`.

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.open_finish

Finishes previous call of e_client_open().

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.open_sync

Opens the `client`, making it ready for queries and other operations.

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.opened

No description available.

###### EDataServer.ClientClass.refresh

Initiates refresh on the `client`. Finishing the method doesn’t mean that the refresh is done, backend only notifies whether it started refreshing or not. Use `e_client_check_refresh_supported()` to check whether the backend supports this method. The call is finished by `e_client_refresh_finish()` from the `callback`.

since: 3.2

###### EDataServer.ClientClass.refresh_finish

Finishes previous call of e_client_refresh().

since: 3.2

###### EDataServer.ClientClass.refresh_sync

Initiates refresh on the `client`. Finishing the method doesn’t mean that the refresh is done, backend only notifies whether it started refreshing or not. Use `e_client_check_refresh_supported()` to check whether the backend supports this method.

since: 3.2

###### EDataServer.ClientClass.remove

Removes the backing data for this `EClient`. For example, with the file backend this deletes the database file. You cannot get it back! The call is finished by `e_client_remove_finish()` from the `callback`.

deprecated: 3.6 since: 3.2

###### EDataServer.ClientClass.remove_finish

Finishes previous call of e_client_remove().

deprecated: 3.6 since: 3.2

###### EDataServer.ClientClass.remove_sync

Removes the backing data for this `EClient`. For example, with the file backend this deletes the database file. You cannot get it back!

deprecated: 3.6 since: 3.2

###### EDataServer.ClientClass.retrieve_capabilities

Initiates retrieval of capabilities on the `client`. This is usually required only once, after the `client` is opened. The returned value is cached and any subsequent call of `e_client_get_capabilities()` and `e_client_check_capability()` is using the cached value. The call is finished by `e_client_retrieve_capabilities_finish()` from the `callback`.

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.retrieve_capabilities_finish

Finishes previous call of e_client_retrieve_capabilities(). Returned value of `capabilities` should be freed with g_free(), when no longer needed.

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.retrieve_capabilities_sync

Initiates retrieval of capabilities on the `client`. This is usually required only once, after the `client` is opened. The returned value is cached and any subsequent call of `e_client_get_capabilities()` and `e_client_check_capability()` is using the cached value. Returned value of `capabilities` should be freed with g_free(), when no longer needed.

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.retrieve_properties_sync

Retrieves `client` properties to match server-side values, without waiting for the D-Bus property change notifications delivery.

since: 3.16

###### EDataServer.ClientClass.set_backend_property

Sets `client`‘s backend property of name `prop_name` to value `prop_value`. The call is finished by `e_client_set_backend_property_finish()` from the `callback`.

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.set_backend_property_finish

Finishes previous call of e_client_set_backend_property().

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.set_backend_property_sync

Sets `client`‘s backend property of name `prop_name` to value `prop_value`.

deprecated: 3.8 since: 3.2

###### EDataServer.ClientClass.unwrap_dbus_error

Unwraps D-Bus error to local error. `dbus_error` is automatically freed. `dbus_erorr` and `out_error` can point to the same variable.

deprecated: 3.8 since: 3.2