WebKitWebsiteDataManager: WebKitGTK Reference Manual

## WebKitWebsiteDataManager WebKitWebsiteDataManager — Website data manager |

## Functions

WebKitWebsiteDataManager * | webkit_website_data_manager_new ()
WebKitWebsiteDataManager * | webkit_website_data_manager_new_ephemeral ()
gboolean | webkit_website_data_manager_is_ephemeral ()
const gchar * | webkit_website_data_manager_get_base_data_directory ()
const gchar * | webkit_website_data_manager_get_base_cache_directory ()
const gchar * | webkit_website_data_manager_get_local_storage_directory ()
const gchar * | webkit_website_data_manager_get_disk_cache_directory ()
const gchar * | webkit_website_data_manager_get_offline_application_cache_directory ()
const gchar * | webkit_website_data_manager_get_indexeddb_directory ()
const gchar * | webkit_website_data_manager_get_websql_directory ()
const gchar * | webkit_website_data_manager_get_hsts_cache_directory ()
const gchar * | webkit_website_data_manager_get_itp_directory ()
const gchar * | webkit_website_data_manager_get_service_worker_registrations_directory ()
const gchar * | webkit_website_data_manager_get_dom_cache_directory ()
WebKitCookieManager * | webkit_website_data_manager_get_cookie_manager ()
void | webkit_website_data_manager_set_itp_enabled ()
gboolean | webkit_website_data_manager_get_itp_enabled ()
void | webkit_website_data_manager_set_persistent_credential_storage_enabled ()
gboolean | webkit_website_data_manager_get_persistent_credential_storage_enabled ()
void | webkit_website_data_manager_set_tls_errors_policy ()
WebKitTLSErrorsPolicy | webkit_website_data_manager_get_tls_errors_policy ()
void | webkit_website_data_manager_set_network_proxy_settings ()
void | webkit_website_data_manager_fetch ()
GList * | webkit_website_data_manager_fetch_finish ()
void | webkit_website_data_manager_remove ()
gboolean | webkit_website_data_manager_remove_finish ()
void | webkit_website_data_manager_clear ()
gboolean | webkit_website_data_manager_clear_finish ()
void | webkit_website_data_manager_set_memory_pressure_settings ()
WebKitITPFirstParty * | webkit_itp_first_party_ref ()
void | webkit_itp_first_party_unref ()
const char * | webkit_itp_first_party_get_domain ()
gboolean | webkit_itp_first_party_get_website_data_access_allowed ()
GDateTime * | webkit_itp_first_party_get_last_update_time ()
WebKitITPThirdParty * | webkit_itp_third_party_ref ()
void | webkit_itp_third_party_unref ()
const char * | webkit_itp_third_party_get_domain ()
GList * | webkit_itp_third_party_get_first_parties ()
void | webkit_website_data_manager_get_itp_summary ()
GList * | webkit_website_data_manager_get_itp_summary_finish ()

## Properties

char * | base-cache-directory | Read / Write / Construct Only
char * | base-data-directory | Read / Write / Construct Only
char * | disk-cache-directory | Read / Write / Construct Only
char * | dom-cache-directory | Read / Write / Construct Only
char * | hsts-cache-directory | Read / Write / Construct Only
char * | indexeddb-directory | Read / Write / Construct Only
gboolean | is-ephemeral | Read / Write / Construct Only
char * | itp-directory | Read / Write / Construct Only
char * | local-storage-directory | Read / Write / Construct Only
char * | offline-application-cache-directory | Read / Write / Construct Only
char * | service-worker-registrations-directory | Read / Write / Construct Only
char * | websql-directory | Read / Write / Construct Only

## Types and Values

struct | WebKitWebsiteDataManager
enum | WebKitTLSErrorsPolicy
| WebKitITPFirstParty
| WebKitITPThirdParty

## Object Hierarchy

        GBoxed
        ├── WebKitITPFirstParty
        ╰── WebKitITPThirdParty
        GObject
        ╰── WebKitWebsiteDataManager

## Description

WebKitWebsiteDataManager allows you to manage the data that websites can store in the client file system like databases or caches. You can use WebKitWebsiteDataManager to configure the local directories where the Website data will be stored, by creating a new manager with `webkit_website_data_manager_new()` passing the values you want to set. You can set all the possible configuration values or only some of them, a default value will be used automatically for the configuration options not provided. “base-data-directory” and “base-cache-directory” are two special properties that can be used to set a common base directory for all Website data and caches. It's possible to provide both, a base directory and a specific value, but in that case, the specific value takes precedence over the base directory. The newly created WebKitWebsiteDataManager must be passed as a construct property to a WebKitWebContext, you can use `webkit_web_context_new_with_website_data_manager()` to create a new WebKitWebContext with a WebKitWebsiteDataManager. In case you don't want to set any specific configuration, you don't need to create a WebKitWebsiteDataManager, the WebKitWebContext will create a WebKitWebsiteDataManager with the default configuration. To get the WebKitWebsiteDataManager of a WebKitWebContext you can use `webkit_web_context_get_website_data_manager()`.

A WebKitWebsiteDataManager can also be ephemeral and then all the directories configuration is not needed because website data will never persist. You can create an ephemeral WebKitWebsiteDataManager with `webkit_website_data_manager_new_ephemeral()`. Then you can pass an ephemeral WebKitWebsiteDataManager to a WebKitWebContext to make it ephemeral or use `webkit_web_context_new_ephemeral()` and the WebKitWebsiteDataManager will be automatically created by the WebKitWebContext.

WebKitWebsiteDataManager can also be used to fetch websites data, remove data stored by particular websites, or clear data for all websites modified since a given period of time.

## Functions

### webkit_website_data_manager_new ()

    WebKitWebsiteDataManager *
    webkit_website_data_manager_new (const gchar *first_option_name,
                                     ...);

Creates a new WebKitWebsiteDataManager with the given options. It must be passed as construction parameter of a WebKitWebContext.

#### Parameters

first_option_name | name of the first option to set |
... | value of first option, followed by more options, `NULL`-terminated |

#### Returns

the newly created WebKitWebsiteDataManager.

[transfer full]

Since: 2.10

### webkit_website_data_manager_new_ephemeral ()

    WebKitWebsiteDataManager *
    webkit_website_data_manager_new_ephemeral
                                   (void);

Creates an ephemeral WebKitWebsiteDataManager. See “is-ephemeral” for more details.

#### Returns

a new ephemeral WebKitWebsiteDataManager.

[transfer full]

Since: 2.16

### webkit_website_data_manager_is_ephemeral ()

    gboolean
    webkit_website_data_manager_is_ephemeral
                                   (WebKitWebsiteDataManager *manager);

Get whether a WebKitWebsiteDataManager is ephemeral. See “is-ephemeral” for more details.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

`TRUE` if `manager` is ephemeral or `FALSE` otherwise.

Since: 2.16

### webkit_website_data_manager_get_base_data_directory ()

    const gchar *
    webkit_website_data_manager_get_base_data_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “base-data-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the base directory for Website data, or `NULL` if “base-data-directory” was not provided or `manager` is ephemeral.

[allow-none]

Since: 2.10

### webkit_website_data_manager_get_base_cache_directory ()

    const gchar *
    webkit_website_data_manager_get_base_cache_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “base-cache-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the base directory for Website cache, or `NULL` if “base-cache-directory” was not provided or `manager` is ephemeral.

[allow-none]

Since: 2.10

### webkit_website_data_manager_get_local_storage_directory ()

    const gchar *
    webkit_website_data_manager_get_local_storage_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “local-storage-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where local storage data is stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.10

### webkit_website_data_manager_get_disk_cache_directory ()

    const gchar *
    webkit_website_data_manager_get_disk_cache_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “disk-cache-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where HTTP disk cache is stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.10

### webkit_website_data_manager_get_offline_application_cache_directory ()

    const gchar *
    webkit_website_data_manager_get_offline_application_cache_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “offline-application-cache-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where offline web application cache is stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.10

### webkit_website_data_manager_get_indexeddb_directory ()

    const gchar *
    webkit_website_data_manager_get_indexeddb_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “indexeddb-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where IndexedDB databases are stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.10

### webkit_website_data_manager_get_websql_directory ()

    const gchar *
    webkit_website_data_manager_get_websql_directory
                                   (WebKitWebsiteDataManager *manager);

`webkit_website_data_manager_get_websql_directory` has been deprecated since version 2.24. and should not be used in newly-written code.

WebSQL is no longer supported. Use IndexedDB instead.

Get the “websql-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where WebSQL databases are stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.10

### webkit_website_data_manager_get_hsts_cache_directory ()

    const gchar *
    webkit_website_data_manager_get_hsts_cache_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “hsts-cache-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where the HSTS cache is stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.26

### webkit_website_data_manager_get_itp_directory ()

    const gchar *
    webkit_website_data_manager_get_itp_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “itp-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where Intelligent Tracking Prevention data is stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.30

### webkit_website_data_manager_get_service_worker_registrations_directory ()

    const gchar *
    webkit_website_data_manager_get_service_worker_registrations_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “service-worker-registrations-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where service worker registrations are stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.30

### webkit_website_data_manager_get_dom_cache_directory ()

    const gchar *
    webkit_website_data_manager_get_dom_cache_directory
                                   (WebKitWebsiteDataManager *manager);

Get the “dom-cache-directory” property.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

the directory where DOM cache is stored or `NULL` if `manager` is ephemeral.

[allow-none]

Since: 2.30

### webkit_website_data_manager_get_cookie_manager ()

    WebKitCookieManager *
    webkit_website_data_manager_get_cookie_manager
                                   (WebKitWebsiteDataManager *manager);

Get the WebKitCookieManager of `manager` .

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

a WebKitCookieManager.

[transfer none]

Since: 2.16

### webkit_website_data_manager_set_itp_enabled ()

    void
    webkit_website_data_manager_set_itp_enabled
                                   (WebKitWebsiteDataManager *manager,
                                    gboolean enabled);

Enable or disable Intelligent Tracking Prevention (ITP). When ITP is enabled resource load statistics are collected and used to decide whether to allow or block third-party cookies and prevent user tracking. Note that while ITP is enabled the accept policy `WEBKIT_COOKIE_POLICY_ACCEPT_NO_THIRD_PARTY` is ignored and `WEBKIT_COOKIE_POLICY_ACCEPT_ALWAYS` is used instead. See also `webkit_cookie_manager_set_accept_policy()`.

#### Parameters

manager | a WebKitWebsiteDataManager |
enabled | value to set |

Since: 2.30

### webkit_website_data_manager_get_itp_enabled ()

    gboolean
    webkit_website_data_manager_get_itp_enabled
                                   (WebKitWebsiteDataManager *manager);

Get whether Intelligent Tracking Prevention (ITP) is enabled or not.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

`TRUE` if ITP is enabled, or `FALSE` otherwise.

Since: 2.30

### webkit_website_data_manager_set_persistent_credential_storage_enabled ()

    void
    webkit_website_data_manager_set_persistent_credential_storage_enabled
                                   (WebKitWebsiteDataManager *manager,
                                    gboolean enabled);

Enable or disable persistent credential storage. When enabled, which is the default for non-ephemeral sessions, the network process will try to read and write HTTP authentiacation credentials from persistent storage.

#### Parameters

manager | a WebKitWebsiteDataManager |
enabled | value to set |

Since: 2.30

### webkit_website_data_manager_get_persistent_credential_storage_enabled ()

    gboolean
    webkit_website_data_manager_get_persistent_credential_storage_enabled
                                   (WebKitWebsiteDataManager *manager);

Get whether persistent credential storage is enabled or not. See also `webkit_website_data_manager_set_persistent_credential_storage_enabled()`.

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

`TRUE` if persistent credential storage is enabled, or `FALSE` otherwise.

Since: 2.30

### webkit_website_data_manager_set_tls_errors_policy ()

    void
    webkit_website_data_manager_set_tls_errors_policy
                                   (WebKitWebsiteDataManager *manager,
                                    WebKitTLSErrorsPolicy policy);

Set the TLS errors policy of `manager` as `policy`

#### Parameters

manager | a WebKitWebsiteDataManager |
policy | a WebKitTLSErrorsPolicy |

Since: 2.32

### webkit_website_data_manager_get_tls_errors_policy ()

    WebKitTLSErrorsPolicy
    webkit_website_data_manager_get_tls_errors_policy
                                   (WebKitWebsiteDataManager *manager);

Get the TLS errors policy of `manager`

#### Parameters

manager | a WebKitWebsiteDataManager |

#### Returns

a WebKitTLSErrorsPolicy

Since: 2.32

### webkit_website_data_manager_set_network_proxy_settings ()

    void
    webkit_website_data_manager_set_network_proxy_settings
                                   (WebKitWebsiteDataManager *manager,
                                    WebKitNetworkProxyMode proxy_mode,
                                    WebKitNetworkProxySettings *proxy_settings);

Set the network proxy settings to be used by connections started in `manager` session. By default `WEBKIT_NETWORK_PROXY_MODE_DEFAULT` is used, which means that the system settings will be used (`g_proxy_resolver_get_default()`). If you want to override the system default settings, you can either use `WEBKIT_NETWORK_PROXY_MODE_NO_PROXY` to make sure no proxies are used at all, or `WEBKIT_NETWORK_PROXY_MODE_CUSTOM` to provide your own proxy settings. When `proxy_mode` is `WEBKIT_NETWORK_PROXY_MODE_CUSTOM` `proxy_settings` must be a valid WebKitNetworkProxySettings; otherwise, `proxy_settings` must be `NULL`.

#### Parameters

manager | a WebKitWebsiteDataManager |
proxy_mode | a WebKitNetworkProxyMode |
proxy_settings | a WebKitNetworkProxySettings, or `NULL`. | [allow-none]

Since: 2.32

### webkit_website_data_manager_fetch ()

    void
    webkit_website_data_manager_fetch (WebKitWebsiteDataManager *manager,
                                       WebKitWebsiteDataTypes types,
                                       GCancellable *cancellable,
                                       GAsyncReadyCallback callback,
                                       gpointer user_data);

Asynchronously get the list of WebKitWebsiteData for the given `types` .

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

#### Parameters

manager | a WebKitWebsiteDataManager |
types | WebKitWebsiteDataTypes |
cancellable | a GCancellable or `NULL` to ignore. | [allow-none]
callback | a GAsyncReadyCallback to call when the request is satisfied. | [scope async]
user_data | the data to pass to callback function. | [closure]

Since: 2.16

### webkit_website_data_manager_fetch_finish ()

    GList *
    webkit_website_data_manager_fetch_finish
                                   (WebKitWebsiteDataManager *manager,
                                    GAsyncResult *result,
                                    GError **error);

Finish an asynchronous operation started with `webkit_website_data_manager_fetch()`.

#### Parameters

manager | a WebKitWebsiteDataManager |
result | a GAsyncResult |
error | return location for error or `NULL` to ignore |

#### Returns

a GList of WebKitWebsiteData. You must free the GList with `g_list_free()` and unref the WebKitWebsiteDatas with `webkit_website_data_unref()` when you're done with them.

[element-type WebKitWebsiteData][transfer full]

Since: 2.16

### webkit_website_data_manager_remove ()

    void
    webkit_website_data_manager_remove (WebKitWebsiteDataManager *manager,
                                        WebKitWebsiteDataTypes types,
                                        GList *website_data,
                                        GCancellable *cancellable,
                                        GAsyncReadyCallback callback,
                                        gpointer user_data);

Asynchronously removes the website data of the for the given `types` for websites in the given `website_data` list. Use `webkit_website_data_manager_clear()` if you want to remove the website data for all sites.

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

#### Parameters

manager | a WebKitWebsiteDataManager |
types | WebKitWebsiteDataTypes |
website_data | a GList of WebKitWebsiteData. | [element-type WebKitWebsiteData]
cancellable | a GCancellable or `NULL` to ignore. | [allow-none]
callback | a GAsyncReadyCallback to call when the request is satisfied. | [scope async]
user_data | the data to pass to callback function. | [closure]

Since: 2.16

### webkit_website_data_manager_remove_finish ()

    gboolean
    webkit_website_data_manager_remove_finish
                                   (WebKitWebsiteDataManager *manager,
                                    GAsyncResult *result,
                                    GError **error);

Finish an asynchronous operation started with `webkit_website_data_manager_remove()`.

#### Parameters

manager | a WebKitWebsiteDataManager |
result | a GAsyncResult |
error | return location for error or `NULL` to ignore |

#### Returns

`TRUE` if website data resources were successfully removed, or `FALSE` otherwise.

Since: 2.16

### webkit_website_data_manager_clear ()

    void
    webkit_website_data_manager_clear (WebKitWebsiteDataManager *manager,
                                       WebKitWebsiteDataTypes types,
                                       GTimeSpan timespan,
                                       GCancellable *cancellable,
                                       GAsyncReadyCallback callback,
                                       gpointer user_data);

Asynchronously clear the website data of the given `types` modified in the past `timespan` . If `timespan` is 0, all website data will be removed.

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

Due to implementation limitations, this function does not currently delete any stored cookies if `timespan` is nonzero. This behavior may change in the future.

#### Parameters

manager | a WebKitWebsiteDataManager |
types | WebKitWebsiteDataTypes |
timespan | a GTimeSpan |
cancellable | a GCancellable or `NULL` to ignore. | [allow-none]
callback | a GAsyncReadyCallback to call when the request is satisfied. | [scope async]
user_data | the data to pass to callback function. | [closure]

Since: 2.16

### webkit_website_data_manager_clear_finish ()

    gboolean
    webkit_website_data_manager_clear_finish
                                   (WebKitWebsiteDataManager *manager,
                                    GAsyncResult *result,
                                    GError **error);

Finish an asynchronous operation started with `webkit_website_data_manager_clear()`

#### Parameters

manager | a WebKitWebsiteDataManager |
result | a GAsyncResult |
error | return location for error or `NULL` to ignore |

#### Returns

`TRUE` if website data was successfully cleared, or `FALSE` otherwise.

Since: 2.16

### webkit_website_data_manager_set_memory_pressure_settings ()

    void
    webkit_website_data_manager_set_memory_pressure_settings
                                   (WebKitMemoryPressureSettings *settings);

Sets `settings` as the WebKitMemoryPressureSettings to be used by all the network processes created by any instance of WebKitWebsiteDataManager after this function is called.

Be sure to call this function before creating any WebKitWebsiteDataManager, as network processes of existing instances are not guaranteed to receive the passed settings.

The periodic check for used memory is disabled by default on network processes. This will be enabled only if custom settings have been set using this function. After that, in order to remove the custom settings and disable the periodic check, this function must be called passing `NULL` as the value of `settings` .

#### Parameters

settings | a WebKitMemoryPressureSettings. |

Since: 2.34

### webkit_itp_first_party_ref ()

    WebKitITPFirstParty *
    webkit_itp_first_party_ref (WebKitITPFirstParty *itp_first_party);

Atomically increments the reference count of `itp_first_party` by one. This function is MT-safe and may be called from any thread.

#### Parameters

itp_first_party | a WebKitITPFirstParty |

#### Returns

The passed WebKitITPFirstParty

Since: 2.30

### webkit_itp_first_party_unref ()

    void
    webkit_itp_first_party_unref (WebKitITPFirstParty *itp_first_party);

Atomically decrements the reference count of `itp_first_party` by one. If the reference count drops to 0, all memory allocated by WebKitITPFirstParty is released. This function is MT-safe and may be called from any thread.

#### Parameters

itp_first_party | a WebKitITPFirstParty |

Since: 2.30

### webkit_itp_first_party_get_domain ()

    const char *
    webkit_itp_first_party_get_domain (WebKitITPFirstParty *itp_first_party);

Get the domain name of `itp_first_party`

#### Parameters

itp_first_party | a WebKitITPFirstParty |

#### Returns

the domain name

Since: 2.30

### webkit_itp_first_party_get_website_data_access_allowed ()

    gboolean
    webkit_itp_first_party_get_website_data_access_allowed
                                   (WebKitITPFirstParty *itp_first_party);

Get whether `itp_first_party` has granted website data access to its WebKitITPThirdParty. Each `WebKitITPFirstParty` is created by `webkit_itp_third_party_get_first_parties()` and therefore corresponds to exactly one WebKitITPThirdParty.

#### Parameters

itp_first_party | a WebKitITPFirstParty |

#### Returns

`TRUE` if website data access has been granted, or `FALSE` otherwise

Since: 2.30

### webkit_itp_first_party_get_last_update_time ()

    GDateTime *
    webkit_itp_first_party_get_last_update_time
                                   (WebKitITPFirstParty *itp_first_party);

Get the last time a WebKitITPThirdParty has been seen under `itp_first_party` . Each `WebKitITPFirstParty` is created by `webkit_itp_third_party_get_first_parties()` and therefore corresponds to exactly one WebKitITPThirdParty.

#### Parameters

itp_first_party | a WebKitITPFirstParty |

#### Returns

the last update time as a GDateTime.

[transfer none]

Since: 2.30

### webkit_itp_third_party_ref ()

    WebKitITPThirdParty *
    webkit_itp_third_party_ref (WebKitITPThirdParty *itp_third_party);

Atomically increments the reference count of `itp_third_party` by one. This function is MT-safe and may be called from any thread.

#### Parameters

itp_third_party | a WebKitITPThirdParty |

#### Returns

The passed WebKitITPThirdParty

Since: 2.30

### webkit_itp_third_party_unref ()

    void
    webkit_itp_third_party_unref (WebKitITPThirdParty *itp_third_party);

Atomically decrements the reference count of `itp_third_party` by one. If the reference count drops to 0, all memory allocated by WebKitITPThirdParty is released. This function is MT-safe and may be called from any thread.

#### Parameters

itp_third_party | a WebKitITPThirdParty |

Since: 2.30

### webkit_itp_third_party_get_domain ()

    const char *
    webkit_itp_third_party_get_domain (WebKitITPThirdParty *itp_third_party);

Get the domain name of `itp_third_party`

#### Parameters

itp_third_party | a WebKitITPThirdParty |

#### Returns

the domain name

Since: 2.30

### webkit_itp_third_party_get_first_parties ()

    GList *
    webkit_itp_third_party_get_first_parties
                                   (WebKitITPThirdParty *itp_third_party);

Get the list of WebKitITPFirstParty under which `itp_third_party` has been seen.

#### Parameters

itp_third_party | a WebKitITPThirdParty |

#### Returns

a GList of WebKitITPFirstParty.

[transfer none][element-type WebKitITPFirstParty]

Since: 2.30

### webkit_website_data_manager_get_itp_summary ()

    void
    webkit_website_data_manager_get_itp_summary
                                   (WebKitWebsiteDataManager *manager,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously get the list of WebKitITPThirdParty seen for `manager` . Every WebKitITPThirdParty contains the list of WebKitITPFirstParty under which it has been seen.

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

#### Parameters

manager | a WebKitWebsiteDataManager |
cancellable | a GCancellable or `NULL` to ignore. | [allow-none]
callback | a GAsyncReadyCallback to call when the request is satisfied. | [scope async]
user_data | the data to pass to callback function. | [closure]

Since: 2.30

### webkit_website_data_manager_get_itp_summary_finish ()

    GList *
    webkit_website_data_manager_get_itp_summary_finish
                                   (WebKitWebsiteDataManager *manager,
                                    GAsyncResult *result,
                                    GError **error);

Finish an asynchronous operation started with `webkit_website_data_manager_get_itp_summary()`.

#### Parameters

manager | a WebKitWebsiteDataManager |
result | a GAsyncResult |
error | return location for error or `NULL` to ignore |

#### Returns

a GList of WebKitITPThirdParty. You must free the GList with `g_list_free()` and unref the WebKitITPThirdPartys with `webkit_itp_third_party_unref()` when you're done with them.

[transfer full][element-type WebKitITPThirdParty]

Since: 2.30

## Types and Values

### struct WebKitWebsiteDataManager

    struct WebKitWebsiteDataManager;

### enum WebKitTLSErrorsPolicy

Enum values used to denote the TLS errors policy.

#### Members

WEBKIT_TLS_ERRORS_POLICY_IGNORE | Ignore TLS errors. |
WEBKIT_TLS_ERRORS_POLICY_FAIL | TLS errors will emit “load-failed-with-tls-errors” and, if the signal is handled, finish the load. In case the signal is not handled, “load-failed” is emitted before the load finishes. |

### WebKitITPFirstParty

    typedef struct _WebKitITPFirstParty WebKitITPFirstParty;

### WebKitITPThirdParty

    typedef struct _WebKitITPThirdParty WebKitITPThirdParty;

## Property Details

### The `“base-cache-directory”` property

      “base-cache-directory”     char *

The base directory for Website cache. This is used as a base directory for any Website cache when no specific cache directory has been provided.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.10

### The `“base-data-directory”` property

      “base-data-directory”      char *

The base directory for Website data. This is used as a base directory for any Website data when no specific data directory has been provided.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.10

### The `“disk-cache-directory”` property

      “disk-cache-directory”     char *

The directory where HTTP disk cache will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.10

### The `“dom-cache-directory”` property

      “dom-cache-directory”      char *

The directory where DOM cache will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.30

### The `“hsts-cache-directory”` property

      “hsts-cache-directory”     char *

The directory where the HTTP Strict-Transport-Security (HSTS) cache will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.26

### The `“indexeddb-directory”` property

      “indexeddb-directory”      char *

The directory where IndexedDB databases will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.10

### The `“is-ephemeral”` property

      “is-ephemeral”             gboolean

Whether the WebKitWebsiteDataManager is ephemeral. An ephemeral WebKitWebsiteDataManager handles all websites data as non-persistent, and nothing will be written to the client storage. Note that if you create an ephemeral WebKitWebsiteDataManager all other construction parameters to configure data directories will be ignored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: FALSE

Since: 2.16

### The `“itp-directory”` property

      “itp-directory”            char *

The directory where Intelligent Tracking Prevention (ITP) data will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.30

### The `“local-storage-directory”` property

      “local-storage-directory”  char *

The directory where local storage data will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.10

### The `“offline-application-cache-directory”` property

      “offline-application-cache-directory” char *

The directory where offline web application cache will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.10

### The `“service-worker-registrations-directory”` property

      “service-worker-registrations-directory” char *

The directory where service workers registrations will be stored.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.30

### The `“websql-directory”` property

      “websql-directory”         char *

The directory where WebSQL databases will be stored.

`WebKitWebsiteDataManager:websql-directory` has been deprecated since version 2.24. and should not be used in newly-written code.

WebSQL is no longer supported. Use IndexedDB instead.

Owner: WebKitWebsiteDataManager

Flags: Read / Write / Construct Only

Default value: NULL

Since: 2.10

## See Also

WebKitWebContext, WebKitWebsiteData