SoupCache

SoupCache — Caching support

Functions

Properties

char * cache-dir Read / Write / Construct Only
SoupCacheType cache-type Read / Write / Construct Only

Types and Values

Object Hierarchy

    GObject
    ╰── SoupCache

Implemented Interfaces

SoupCache implements SoupSessionFeature and SoupContentProcessor.

Includes

#include <libsoup/soup.h>

Description

SoupCache implements a file-based cache for HTTP resources.

Functions

soup_cache_new ()

SoupCache *
soup_cache_new (const char *cache_dir,
                SoupCacheType cache_type);

Creates a new SoupCache.

Parameters

cache_dir

the directory to store the cached data, or NULL to use the default one. Note that since the cache isn't safe to access for multiple processes at once, and the default directory isn't namespaced by process, clients are strongly discouraged from passing NULL.

[nullable]

cache_type

the SoupCacheType of the cache

 

Returns

a new SoupCache


soup_cache_flush ()

void
soup_cache_flush (SoupCache *cache);

This function will force all pending writes in the cache to be committed to disk. For doing so it will iterate the GMainContext associated with cache 's session as long as needed.

Contrast with soup_cache_dump(), which writes out the cache index file.

Parameters

cache

a SoupCache

 

soup_cache_clear ()

void
soup_cache_clear (SoupCache *cache);

Will remove all entries in the cache plus all the cache files.

Parameters

cache

a SoupCache

 

soup_cache_dump ()

void
soup_cache_dump (SoupCache *cache);

Synchronously writes the cache index out to disk. Contrast with soup_cache_flush(), which writes pending cache entries to disk.

You must call this before exiting if you want your cache data to persist between sessions.

Parameters

cache

a SoupCache

 

soup_cache_load ()

void
soup_cache_load (SoupCache *cache);

Loads the contents of cache 's index into memory.

Parameters

cache

a SoupCache

 

soup_cache_get_max_size ()

guint
soup_cache_get_max_size (SoupCache *cache);

Gets the maximum size of the cache.

Parameters

cache

a SoupCache

 

Returns

the maximum size of the cache, in bytes.


soup_cache_set_max_size ()

void
soup_cache_set_max_size (SoupCache *cache,
                         guint max_size);

Sets the maximum size of the cache.

Parameters

cache

a SoupCache

 

max_size

the maximum size of the cache, in bytes

 

Types and Values

SoupCache

typedef struct _SoupCache SoupCache;

Class implementing caching for HTTP resources.


enum SoupCacheType

The type of cache; this affects what kinds of responses will be saved.

Members

SOUP_CACHE_SINGLE_USER

a single-user cache

 

SOUP_CACHE_SHARED

a shared cache

 

Property Details

The “cache-dir” property

  “cache-dir”                char *

The directory to store the cache files.

Owner: SoupCache

Flags: Read / Write / Construct Only

Default value: NULL


The “cache-type” property

  “cache-type”               SoupCacheType

Whether the cache is private or shared.

Owner: SoupCache

Flags: Read / Write / Construct Only

Default value: SOUP_CACHE_SINGLE_USER