### Class

# EDataServer Source

since: 3.6

#### Description [src]

    class EDataServer.Source : GObject.Object
      implements Gio.Initable, Gio.ProxyResolver {
      /* No available fields */
    }

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

Available since: 3.6

#### Hierarchy

#### Ancestors

- GObject

#### Implements

- GInitable
- GProxyResolver

#### Constructors

###### e_source_new

Creates a new `ESource` instance.

since: 3.6

###### e_source_new_with_uid

Creates a new “scratch” `ESource` with a predetermined unique identifier.

since: 3.6

#### Functions

###### e_source_parameter_to_key

Converts a `GParamSpec` name (e.g. “foo-bar” or “foo_bar”) to “CamelCase” for use as a `GKeyFile` key (e.g. “FooBar”).

since: 3.6

#### Instance methods

###### e_source_camel_configure_service

This function essentially glues together `source` and `serivce` so their configuration settings stay synchronized. The glue itself is a shared `CamelSettings` instance.

since: 3.6

###### e_source_changed

Emits the `ESource::changed` signal from an idle callback in `source`‘s `ESource:main-context`.

since: 3.6

###### e_source_compare_by_display_name

Compares two `ESource` instances by their display names. Useful for ordering sources in a user interface.

since: 3.6

###### e_source_delete_password

Asynchronously deletes the password for `source` from either the default keyring or session keyring. This operation does not rely on the registry service and therefore works for any `ESource` — registered or “scratch”.

since: 3.12

###### e_source_delete_password_finish

Finishes the operation started with e_source_delete_password().

since: 3.12

###### e_source_delete_password_sync

Deletes the password for `source` from either the default keyring or session keyring. This operation does not rely on the registry service and therefore works for any `ESource` — registered or “scratch”.

since: 3.12

###### e_source_dup_display_name

Thread-safe variation of e_source_get_display_name(). Use this function when accessing `source` from multiple threads.

since: 3.6

###### e_source_dup_parent

Thread-safe variation of e_source_get_parent(). Use this function when accessing `source` from multiple threads.

since: 3.6

###### e_source_dup_secret_label

Creates a label string based on `source`‘s `ESource:display-name` for use with `SecretItem`.

since: 3.12

###### e_source_dup_uid

Thread-safe variation of e_source_get_uid(). Use this function when accessing `source` from multiple threads.

since: 3.6

###### e_source_emit_credentials_required

Emits locally (in this process only) the ESource::credentials-required signal with given parameters. That’s the difference with e_source_invoke_credentials_required(), which calls the signal globally, within each client.

since: 3.16

###### e_source_equal

Checks two `ESource` instances for equality. `ESource` instances are equal if their unique identifier strings are equal.

since: 3.6

###### e_source_get_connection_status

Obtain current connection status of the `source`.

since: 3.16

###### e_source_get_display_name

Returns the display name for `source`. Use the display name to represent the `ESource` in a user interface.

since: 3.6

###### e_source_get_enabled

Returns `TRUE` if `source` is enabled.

since: 3.6

###### e_source_get_extension

Returns an instance of some `ESourceExtension` subclass which registered itself under `extension_name`. If no such instance exists within `source`, one will be created. It is the caller’s responsibility to know which subclass is being returned.

since: 3.6

###### e_source_get_last_credentials_required_arguments

Asynchronously calls the GetLastCredentialsRequiredArguments method on the server side, to get the last values used for the ‘credentials-required’ signal. See `e_source_get_last_credentials_required_arguments_sync()` for more information.

since: 3.16

###### e_source_get_last_credentials_required_arguments_finish

Finishes the operation started with e_source_get_last_credentials_required_arguments(). See `e_source_get_last_credentials_required_arguments_sync()` for more information about the output arguments.

since: 3.16

###### e_source_get_last_credentials_required_arguments_sync

Retrieves the last used arguments of the ‘credentials-required’ signal emission. If there was none emitted yet, or a corresponding ‘authenitcate’ had been emitted already, then the `out_reason` is set to #E_SOURCE_CREDENTIALS_REASON_UNKNOWN and the value of other ‘out’ arguments is set to no values.

since: 3.16

###### e_source_get_oauth2_access_token

Asynchronously obtains the OAuth 2.0 access token for `source` along with its expiry in seconds from the current time (or 0 if unknown).

since: 3.8

###### e_source_get_oauth2_access_token_finish

Finishes the operation started with e_source_get_oauth2_access_token().

since: 3.8

###### e_source_get_oauth2_access_token_sync

Obtains the OAuth 2.0 access token for `source` along with its expiry in seconds from the current time (or 0 if unknown).

since: 3.8

###### e_source_get_parent

Returns the unique identifier string of the parent `ESource`.

since: 3.6

###### e_source_get_remote_creatable

Returns whether new resources can be created on a remote server by calling `e_source_remote_create()` on `source`.

since: 3.6

###### e_source_get_remote_deletable

Returns whether the resource represented by `source` can be deleted from a remote server by calling e_source_remote_delete().

since: 3.6

###### e_source_get_removable

Returns whether the D-Bus service will allow `source` to be removed. If `source` is not writable, calls to `e_source_remove()` will fail.

since: 3.6

###### e_source_get_uid

Returns the unique identifier string for `source`.

since: 3.6

###### e_source_get_writable

Returns whether the D-Bus service will accept changes to `source`. If `source` is not writable, calls to `e_source_write()` will fail.

since: 3.6

###### e_source_has_extension

Checks whether `source` has an `ESourceExtension` with the given name.

since: 3.6

###### e_source_hash

Generates a hash value for `source`. This function is intended for easily hashing an `ESource` to add to a `GHashTable` or similar data structure.

since: 3.6

###### e_source_invoke_authenticate

Asynchronously calls the InvokeAuthenticate method on the server side, thus the backend knows what credentials to use to connect to its (possibly remote) data store.

since: 3.16

###### e_source_invoke_authenticate_finish

Finishes the operation started with e_source_invoke_authenticate().

since: 3.16

###### e_source_invoke_authenticate_sync

Calls the InvokeAuthenticate method on the server side, thus the backend knows what credentials to use to connect to its (possibly remote) data store.

since: 3.16

###### e_source_invoke_credentials_required

Asynchronously calls the InvokeCredentialsRequired method on the server side, to inform clients that credentials are required.

since: 3.16

###### e_source_invoke_credentials_required_finish

Finishes the operation started with e_source_invoke_credentials_required().

since: 3.16

###### e_source_invoke_credentials_required_sync

Let’s the client-side know that credentials are required. The `reason` defines which parameters are used. The client passed the credentials with an `e_source_invoke_authenticate()` call.

since: 3.16

###### e_source_lookup_password

Asynchronously looks up a password for `source`. Both the default and session keyrings are queried. This operation does not rely on the registry service and therefore works for any `ESource` — registered or “scratch”.

since: 3.12

###### e_source_lookup_password_finish

Finishes the operation started with e_source_lookup_password().

since: 3.12

###### e_source_lookup_password_sync

Looks up a password for `source`. Both the default and session keyrings are queried. This operation does not rely on the registry service and therefore works for any `ESource` — registered or “scratch”.

since: 3.12

###### e_source_mail_signature_load

Asynchronously loads a signature from the signature file for `source`, which is given by e_source_mail_signature_get_file().

since: 3.6

###### e_source_mail_signature_load_finish

Finishes an operation started with e_source_mail_signature_load(). The signature file contents are placed in `contents`, and `length` is set to the size of the `contents` string. The `contents` string should be freed with `g_free()` when no longer needed.

since: 3.6

###### e_source_mail_signature_load_sync

Loads a signature from the signature file for `source`, which is given by e_source_mail_signature_get_file(). The signature contents are placed in `contents`, and `length` is set to the size of the `contents` string. The `contents` string should be freed with `g_free()` when no longer needed.

since: 3.6

###### e_source_mail_signature_replace

Asynchrously replaces the signature file for `source` with the given `contents` of `length` bytes. The signature file for `source` is given by e_source_mail_signature_get_file().

since: 3.6

###### e_source_mail_signature_replace_finish

Finishes an operation started with e_source_mail_signature_replace().

since: 3.6

###### e_source_mail_signature_replace_sync

Replaces the signature file for `source` with the given `contents` of `length` bytes. The signature file for `source` is given by e_source_mail_signature_get_file().

since: 3.6

###### e_source_mail_signature_symlink

Asynchronously replaces the signature file for `source` with a symbolic link to `symlink_target`, which should be an executable file that prints a mail signature to standard output. The signature file for `source` is given by e_source_mail_signature_get_file().

since: 3.6

###### e_source_mail_signature_symlink_finish

Finishes an operation started with e_source_mail_signature_symlink().

since: 3.6

###### e_source_mail_signature_symlink_sync

Replaces the signature file for `source` with a symbolic link to `symlink_target`, which should be an executable file that prints a mail signature to standard output. The signature file for `source` is given by e_source_mail_signature_get_file().

since: 3.6

###### e_source_proxy_lookup

Asynchronously determines what proxy, if any, to use to connect to `uri`. See `e_source_proxy_lookup_sync()` for more details.

since: 3.12

###### e_source_proxy_lookup_finish

Finishes the operation started with e_source_proxy_lookup().

since: 3.12

###### e_source_proxy_lookup_sync

Looks into `source`‘s `ESourceProxy` extension to determine what proxy, if any, to use to connect to `uri`. The returned proxy URIs are of the same form described by g_proxy_resolver_lookup().

since: 3.12

###### e_source_ref_dbus_object

Returns the `GDBusObject` that was passed to e_source_new().

since: 3.6

###### e_source_ref_main_context

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

since: 3.6

###### e_source_refresh_add_timeout

This is a simple way to schedule a periodic data source refresh.

since: 3.6

###### e_source_refresh_force_timeout

For all timeouts added with e_source_refresh_add_timeout(), invokes the `ESourceRefreshFunc` callback immediately and then, if the refresh `ESourceRefresh:enabled` state is TRUE, reschedules the timeout.

since: 3.6

###### e_source_refresh_remove_timeout

Removes a timeout `GSource` added by e_source_refresh_add_timeout().

since: 3.6

###### e_source_refresh_remove_timeouts_by_data

Removes all timeout `GSource`‘s added by `e_source_refresh_add_timeout()` whose callback data pointer matches `user_data`.

since: 3.6

###### e_source_remote_create

Asynchronously creates a new remote resource by picking out relevant details from `scratch_source`. The `scratch_source` must be an `ESource` with no `GDBusObject`. The `source` must be `ESource:remote-creatable`.

since: 3.6

###### e_source_remote_create_finish

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

since: 3.6

###### e_source_remote_create_sync

Creates a new remote resource by picking out relevant details from `scratch_source`. The `scratch_source` must be an `ESource` with no `GDBusObject`. The `source` must be `ESource:remote-creatable`.

since: 3.6

###### e_source_remote_delete

Asynchronously deletes the resource represented by `source` from a remote server. The `source` must be `ESource:remote-deletable`. This will also delete the key file for `source` and broadcast its removal to all clients, similar to e_source_remove().

since: 3.6

###### e_source_remote_delete_finish

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

since: 3.6

###### e_source_remote_delete_sync

Deletes the resource represented by `source` from a remote server. The `source` must be `ESource:remote-deletable`. This will also delete the key file for `source` and broadcast its removal to all clients, similar to e_source_remove_sync().

since: 3.6

###### e_source_remove

Asynchronously requests the D-Bus service to delete the key files for `source` and all of its descendants and broadcast their removal to all clients. The `source` must be `ESource:removable`.

since: 3.6

###### e_source_remove_finish

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

since: 3.6

###### e_source_remove_sync

Requests the D-Bus service to delete the key files for `source` and all of its descendants and broadcast their removal to all clients. The `source` must be `ESource:removable`.

since: 3.6

###### e_source_set_connection_status

Set’s current connection status of the `source`.

since: 3.16

###### e_source_set_display_name

Sets the display name for `source`. The `display_name` argument must be a valid UTF-8 string. Use the display name to represent the `ESource` in a user interface.

since: 3.6

###### e_source_set_enabled

Enables or disables `source`.

since: 3.6

###### e_source_set_parent

Identifies the parent of `source` by its unique identifier string. This can only be set prior to adding `source` to an `ESourceRegistry`.

since: 3.6

###### e_source_store_password

Asynchronously stores a password for `source`. This operation does not rely on the registry service and therefore works for any `ESource` — registered or “scratch”.

since: 3.12

###### e_source_store_password_finish

Finishes the operation started with e_source_store_password().

since: 3.12

###### e_source_store_password_sync

Stores a password for `source`. This operation does not rely on the registry service and therefore works for any `ESource` — registered or “scratch”.

since: 3.12

###### e_source_to_string

Outputs the current contents of `source` as a key file string. Free the returned string with g_free().

since: 3.6

###### e_source_unset_last_credentials_required_arguments

Asynchronously calls the UnsetLastCredentialsRequiredArguments method on the server side, to unset the last values used for the ‘credentials-required’ signal.

since: 3.18

###### e_source_unset_last_credentials_required_arguments_finish

Finishes the operation started with e_source_unset_last_credentials_required_arguments().

since: 3.18

###### e_source_unset_last_credentials_required_arguments_sync

Unsets the last used arguments of the ‘credentials-required’ signal emission.

since: 3.18

###### e_source_write

Asynchronously submits the current contents of `source` to the D-Bus service to be written to disk and broadcast to other clients. The `source` must be `ESource:writable`.

since: 3.6

###### e_source_write_finish

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

since: 3.6

###### e_source_write_sync

Submits the current contents of `source` to the D-Bus service to be written to disk and broadcast to other clients. The `source` must be `ESource:writable`.

since: 3.6

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

Please see GObject for a full list of methods.

##### Methods inherited from GInitable (1)

###### g_initable_init

Initializes the object implementing the interface.

##### Methods inherited from GProxyResolver (4)

###### g_proxy_resolver_is_supported

Checks if `resolver` can be used on this system. (This is used internally; `g_proxy_resolver_get_default()` will only return a proxy resolver that returns `TRUE` for this method.).

###### g_proxy_resolver_lookup

Looks into the system proxy configuration to determine what proxy, if any, to use to connect to `uri`. The returned proxy URIs are of the form `<protocol>://[user[:password]@]host[:port]` or `direct://`, where `<protocol>` could be http, rtsp, socks or other proxying protocol.

###### g_proxy_resolver_lookup_async

Asynchronous lookup of proxy. See `g_proxy_resolver_lookup()` for more details.

###### g_proxy_resolver_lookup_finish

Call this function to obtain the array of proxy URIs when `g_proxy_resolver_lookup_async()` is complete. See `g_proxy_resolver_lookup()` for more details.

#### Properties

###### EDataServer.Source:connection-status

Connection status of the source.

###### EDataServer.Source:dbus-object

The D-Bus object for the data source.

###### EDataServer.Source:display-name

The human-readable name of the data source.

###### EDataServer.Source:enabled

Whether the data source is enabled.

###### EDataServer.Source:main-context

The main loop context on which to attach event sources.

###### EDataServer.Source:parent

The unique identity of the parent data source.

###### EDataServer.Source:remote-creatable

Whether the data source can create remote resources.

###### EDataServer.Source:remote-deletable

Whether the data source can delete remote resources.

###### EDataServer.Source:removable

Whether the data source is removable.

###### EDataServer.Source:uid

The unique identity of the data source.

###### EDataServer.Source:writable

Whether the data source is writable.

#### Signals

###### EDataServer.Source::authenticate

Let’s the backend know provided credentials to use to login to (possibly remote) data store.

###### EDataServer.Source::changed

The ::changed signal is emitted when a property in `source` or one of its extension objects changes. A common use for this signal is to notify a `GtkTreeModel` containing data collected from `ESource`s that it needs to update a row.

###### EDataServer.Source::credentials-required

The ::credentials-required signal is emitted when the `source` requires credentials to connect to (possibly remote) data store. The credentials can be passed to the backend using `e_source_invoke_authenticate()` function.

##### 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 EDataServerSourceClass {
      GObjectClass parent_class;
      void (* changed) (
        ESource* source
      );
      void (* credentials_required) (
        ESource* source,
        ESourceCredentialsReason reason,
        const gchar* certificate_pem,
        GTlsCertificateFlags certificate_errors,
        const GError* op_error
      );
      void (* authenticate) (
        ESource* source,
        const ENamedParameters* credentials
      );
      gboolean (* remove_sync) (
        ESource* source,
        GCancellable* cancellable,
        GError** error
      );
      void (* remove) (
        ESource* source,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* remove_finish) (
        ESource* source,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* write_sync) (
        ESource* source,
        GCancellable* cancellable,
        GError** error
      );
      void (* write) (
        ESource* source,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* write_finish) (
        ESource* source,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* remote_create_sync) (
        ESource* source,
        ESource* scratch_source,
        GCancellable* cancellable,
        GError** error
      );
      void (* remote_create) (
        ESource* source,
        ESource* scratch_source,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* remote_create_finish) (
        ESource* source,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* remote_delete_sync) (
        ESource* source,
        GCancellable* cancellable,
        GError** error
      );
      void (* remote_delete) (
        ESource* source,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* remote_delete_finish) (
        ESource* source,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* get_oauth2_access_token_sync) (
        ESource* source,
        GCancellable* cancellable,
        gchar** out_access_token,
        gint* out_expires_in,
        GError** error
      );
      void (* get_oauth2_access_token) (
        ESource* source,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* get_oauth2_access_token_finish) (
        ESource* source,
        GAsyncResult* result,
        gchar** out_access_token,
        gint* out_expires_in,
        GError** error
      );
      gboolean (* invoke_credentials_required_impl) (
        ESource* source,
        gpointer dbus_source,
        const gchar* arg_reason,
        const gchar* arg_certificate_pem,
        const gchar* arg_certificate_errors,
        const gchar* arg_dbus_error_name,
        const gchar* arg_dbus_error_message,
        GCancellable* cancellable,
        GError** error
      );
      gboolean (* invoke_authenticate_impl) (
        ESource* source,
        gpointer dbus_source,
        const gchar* const* arg_credentials,
        GCancellable* cancellable,
        GError** error
      );
      gboolean (* unset_last_credentials_required_arguments_impl) (
        ESource* source,
        GCancellable* cancellable,
        GError** error
      );
      gpointer reserved;

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`changed: void (* changed) ( ESource* source )`

  No description available.

`credentials_required: void (* credentials_required) ( ESource* source, ESourceCredentialsReason reason, const gchar* certificate_pem, GTlsCertificateFlags certificate_errors, const GError* op_error )`

  No description available.

`authenticate: void (* authenticate) ( ESource* source, const ENamedParameters* credentials )`

  No description available.

`remove_sync: gboolean (* remove_sync) ( ESource* source, GCancellable* cancellable, GError** error )`

  No description available.

`remove: void (* remove) ( ESource* source, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`remove_finish: gboolean (* remove_finish) ( ESource* source, GAsyncResult* result, GError** error )`

  No description available.

`write_sync: gboolean (* write_sync) ( ESource* source, GCancellable* cancellable, GError** error )`

  No description available.

`write: void (* write) ( ESource* source, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`write_finish: gboolean (* write_finish) ( ESource* source, GAsyncResult* result, GError** error )`

  No description available.

`remote_create_sync: gboolean (* remote_create_sync) ( ESource* source, ESource* scratch_source, GCancellable* cancellable, GError** error )`

  No description available.

`remote_create: void (* remote_create) ( ESource* source, ESource* scratch_source, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`remote_create_finish: gboolean (* remote_create_finish) ( ESource* source, GAsyncResult* result, GError** error )`

  No description available.

`remote_delete_sync: gboolean (* remote_delete_sync) ( ESource* source, GCancellable* cancellable, GError** error )`

  No description available.

`remote_delete: void (* remote_delete) ( ESource* source, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`remote_delete_finish: gboolean (* remote_delete_finish) ( ESource* source, GAsyncResult* result, GError** error )`

  No description available.

`get_oauth2_access_token_sync: gboolean (* get_oauth2_access_token_sync) ( ESource* source, GCancellable* cancellable, gchar** out_access_token, gint* out_expires_in, GError** error )`

  No description available.

`get_oauth2_access_token: void (* get_oauth2_access_token) ( ESource* source, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`get_oauth2_access_token_finish: gboolean (* get_oauth2_access_token_finish) ( ESource* source, GAsyncResult* result, gchar** out_access_token, gint* out_expires_in, GError** error )`

  No description available.

`invoke_credentials_required_impl: gboolean (* invoke_credentials_required_impl) ( ESource* source, gpointer dbus_source, const gchar* arg_reason, const gchar* arg_certificate_pem, const gchar* arg_certificate_errors, const gchar* arg_dbus_error_name, const gchar* arg_dbus_error_message, GCancellable* cancellable, GError** error )`

  No description available.

`invoke_authenticate_impl: gboolean (* invoke_authenticate_impl) ( ESource* source, gpointer dbus_source, const gchar* const* arg_credentials, GCancellable* cancellable, GError** error )`

  No description available.

`unset_last_credentials_required_arguments_impl: gboolean (* unset_last_credentials_required_arguments_impl) ( ESource* source, GCancellable* cancellable, GError** error )`

  No description available.

`reserved: gpointer`

  No description available.

#### Virtual methods

###### EDataServer.SourceClass.authenticate

No description available.

###### EDataServer.SourceClass.changed

Emits the `ESource::changed` signal from an idle callback in `source`‘s `ESource:main-context`.

since: 3.6

###### EDataServer.SourceClass.credentials_required

No description available.

###### EDataServer.SourceClass.get_oauth2_access_token

Asynchronously obtains the OAuth 2.0 access token for `source` along with its expiry in seconds from the current time (or 0 if unknown).

since: 3.8

###### EDataServer.SourceClass.get_oauth2_access_token_finish

Finishes the operation started with e_source_get_oauth2_access_token().

since: 3.8

###### EDataServer.SourceClass.get_oauth2_access_token_sync

Obtains the OAuth 2.0 access token for `source` along with its expiry in seconds from the current time (or 0 if unknown).

since: 3.8

###### EDataServer.SourceClass.invoke_authenticate_impl

No description available.

###### EDataServer.SourceClass.invoke_credentials_required_impl

No description available.

###### EDataServer.SourceClass.remote_create

Asynchronously creates a new remote resource by picking out relevant details from `scratch_source`. The `scratch_source` must be an `ESource` with no `GDBusObject`. The `source` must be `ESource:remote-creatable`.

since: 3.6

###### EDataServer.SourceClass.remote_create_finish

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

since: 3.6

###### EDataServer.SourceClass.remote_create_sync

Creates a new remote resource by picking out relevant details from `scratch_source`. The `scratch_source` must be an `ESource` with no `GDBusObject`. The `source` must be `ESource:remote-creatable`.

since: 3.6

###### EDataServer.SourceClass.remote_delete

Asynchronously deletes the resource represented by `source` from a remote server. The `source` must be `ESource:remote-deletable`. This will also delete the key file for `source` and broadcast its removal to all clients, similar to e_source_remove().

since: 3.6

###### EDataServer.SourceClass.remote_delete_finish

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

since: 3.6

###### EDataServer.SourceClass.remote_delete_sync

Deletes the resource represented by `source` from a remote server. The `source` must be `ESource:remote-deletable`. This will also delete the key file for `source` and broadcast its removal to all clients, similar to e_source_remove_sync().

since: 3.6

###### EDataServer.SourceClass.remove

Asynchronously requests the D-Bus service to delete the key files for `source` and all of its descendants and broadcast their removal to all clients. The `source` must be `ESource:removable`.

since: 3.6

###### EDataServer.SourceClass.remove_finish

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

since: 3.6

###### EDataServer.SourceClass.remove_sync

Requests the D-Bus service to delete the key files for `source` and all of its descendants and broadcast their removal to all clients. The `source` must be `ESource:removable`.

since: 3.6

###### EDataServer.SourceClass.unset_last_credentials_required_arguments_impl

No description available.

###### EDataServer.SourceClass.write

Asynchronously submits the current contents of `source` to the D-Bus service to be written to disk and broadcast to other clients. The `source` must be `ESource:writable`.

since: 3.6

###### EDataServer.SourceClass.write_finish

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

since: 3.6

###### EDataServer.SourceClass.write_sync

Submits the current contents of `source` to the D-Bus service to be written to disk and broadcast to other clients. The `source` must be `ESource:writable`.

since: 3.6