### Class

# EDataServer SourceCredentialsProviderImpl

since: 3.16

#### Description [src]

    abstract class EDataServer.SourceCredentialsProviderImpl : EDataServer.Extension
    {
      /* No available fields */
    }

Credentials provider implementation base structure. The descendants implement the virtual methods. The descendants are automatically registered into an `ESourceCredentialsProvider`.

Available since: 3.16

#### Hierarchy

#### Ancestors

- EExtension
- GObject

#### Descendants

- ESourceCredentialsProviderImplOAuth2
- ESourceCredentialsProviderImplPassword

#### Instance methods

###### e_source_credentials_provider_impl_can_process

Returns whether the `provider_impl` can process credentials for the `source`.

since: 3.16

###### e_source_credentials_provider_impl_can_prompt

Returns whether credential prompt can be done for the `provider_impl`.

since: 3.16

###### e_source_credentials_provider_impl_can_store

Returns whether the `provider_impl` can store credentials.

since: 3.16

###### e_source_credentials_provider_impl_delete_sync

Asks `provider_impl` to delete any stored credentials for `source`.

since: 3.16

###### e_source_credentials_provider_impl_get_provider

Returns an `ESourceCredentialsProvider` with which the `provider_impl` is associated.

since: 3.16

###### e_source_credentials_provider_impl_lookup_sync

Asks `provider_impl` to lookup for stored credentials for `source`. The `out_credentials` is populated with them. If the result is not `NULL`, then it should be freed with `e_named_parameters_free()` when no longer needed.

since: 3.16

###### e_source_credentials_provider_impl_store_sync

Asks `provider_impl` to store `credentials` for `source`.

since: 3.16

##### Methods inherited from EExtension (1)

###### e_extension_get_extensible

Returns the object that `extension` extends.

since: 3.4

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

Please see GObject for a full list of methods.

#### Properties

##### Properties inherited from EExtension (1)

###### EDataServer.Extension:extensible

The object being extended.

#### Signals

##### 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 EDataServerSourceCredentialsProviderImplClass {
      EExtensionClass parent_class;
      gboolean (* can_process) (
        ESourceCredentialsProviderImpl* provider_impl,
        ESource* source
      );
      gboolean (* can_store) (
        ESourceCredentialsProviderImpl* provider_impl
      );
      gboolean (* can_prompt) (
        ESourceCredentialsProviderImpl* provider_impl
      );
      gboolean (* lookup_sync) (
        ESourceCredentialsProviderImpl* provider_impl,
        ESource* source,
        GCancellable* cancellable,
        ENamedParameters** out_credentials,
        GError** error
      );
      gboolean (* store_sync) (
        ESourceCredentialsProviderImpl* provider_impl,
        ESource* source,
        const ENamedParameters* credentials,
        gboolean permanently,
        GCancellable* cancellable,
        GError** error
      );
      gboolean (* delete_sync) (
        ESourceCredentialsProviderImpl* provider_impl,
        ESource* source,
        GCancellable* cancellable,
        GError** error
      );

    }

No description available.

###### Class members

`parent_class: EExtensionClass`

  No description available.

`can_process: gboolean (* can_process) ( ESourceCredentialsProviderImpl* provider_impl, ESource* source )`

  No description available.

`can_store: gboolean (* can_store) ( ESourceCredentialsProviderImpl* provider_impl )`

  No description available.

`can_prompt: gboolean (* can_prompt) ( ESourceCredentialsProviderImpl* provider_impl )`

  No description available.

`lookup_sync: gboolean (* lookup_sync) ( ESourceCredentialsProviderImpl* provider_impl, ESource* source, GCancellable* cancellable, ENamedParameters** out_credentials, GError** error )`

  No description available.

`store_sync: gboolean (* store_sync) ( ESourceCredentialsProviderImpl* provider_impl, ESource* source, const ENamedParameters* credentials, gboolean permanently, GCancellable* cancellable, GError** error )`

  No description available.

`delete_sync: gboolean (* delete_sync) ( ESourceCredentialsProviderImpl* provider_impl, ESource* source, GCancellable* cancellable, GError** error )`

  No description available.

#### Virtual methods

###### EDataServer.SourceCredentialsProviderImplClass.can_process

Returns whether the `provider_impl` can process credentials for the `source`.

since: 3.16

###### EDataServer.SourceCredentialsProviderImplClass.can_prompt

Returns whether credential prompt can be done for the `provider_impl`.

since: 3.16

###### EDataServer.SourceCredentialsProviderImplClass.can_store

Returns whether the `provider_impl` can store credentials.

since: 3.16

###### EDataServer.SourceCredentialsProviderImplClass.delete_sync

Asks `provider_impl` to delete any stored credentials for `source`.

since: 3.16

###### EDataServer.SourceCredentialsProviderImplClass.lookup_sync

Asks `provider_impl` to lookup for stored credentials for `source`. The `out_credentials` is populated with them. If the result is not `NULL`, then it should be freed with `e_named_parameters_free()` when no longer needed.

since: 3.16

###### EDataServer.SourceCredentialsProviderImplClass.store_sync

Asks `provider_impl` to store `credentials` for `source`.

since: 3.16