Top | ![]() |
![]() |
![]() |
![]() |
#define | AS_TYPE_POOL |
struct | AsPoolClass |
enum | AsCacheFlags |
enum | AsPoolFlags |
enum | AsPoolError |
#define | AS_POOL_ERROR |
AsPool |
This class loads AppStream metadata from various sources and refines it with existing knowledge about the system (e.g. by setting absolute paths for cached icons). An AsPool will use an on-disk cache to store metadata is has read and refined to speed up the loading time when the same data is requested a second time.
You can find AppStream metadata matching various user-defined criteria, and also add new metadata to the pool. The caching behavior can be controlled by the application using AsCacheFlags.
An AppStream cache object can also be created and read using the appstreamcli(1) utility.
This class is threadsafe.
See also: AsComponent
const gchar *
as_pool_get_locale (AsPool *pool
);
Gets the currently used locale.
void as_pool_set_locale (AsPool *pool
,const gchar *locale
);
Sets the current locale which should be used when parsing metadata.
gboolean as_pool_load (AsPool *pool
,GCancellable *cancellable
,GError **error
);
Builds an index of all found components in the watched locations.
The function will try to get as much data into the pool as possible, so even if
the update completes with FALSE
, it might still have added components to the pool.
The function will load from all possible data sources, preferring caches if they are up to date.
void as_pool_load_async (AsPool *pool
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously loads data from all registered locations.
Equivalent to as_pool_load()
(but asynchronous)
pool |
An instance of AsPool. |
|
cancellable |
a GCancellable. |
|
callback |
A GAsyncReadyCallback |
|
user_data |
Data to pass to |
Since: 0.12.10
gboolean as_pool_load_finish (AsPool *pool
,GAsyncResult *result
,GError **error
);
Retrieve the result of as_pool_load_async()
.
Since: 0.12.10
gboolean as_pool_clear2 (AsPool *pool
,GError **error
);
Remove all metadata from the pool and clear caches.
gboolean as_pool_add_component (AsPool *pool
,AsComponent *cpt
,GError **error
);
Register a new component in the AppStream metadata pool.
pool |
An instance of AsPool |
|
cpt |
The AsComponent to add to the pool. |
|
error |
A GError or |
GPtrArray *
as_pool_get_components (AsPool *pool
);
Get a list of found components.
GPtrArray * as_pool_get_components_by_id (AsPool *pool
,const gchar *cid
);
Get a specific component by its ID. This function may contain multiple results if we have data describing this component from multiple scopes/origin types.
GPtrArray * as_pool_get_components_by_provided_item (AsPool *pool
,AsProvidedKind kind
,const gchar *item
);
Find components in the AppStream data pool which provide a certain item.
an array of AsComponent objects which have been found.
[transfer container][element-type AsComponent]
GPtrArray * as_pool_get_components_by_kind (AsPool *pool
,AsComponentKind kind
);
Return a list of all components in the pool which are of a certain kind.
an array of AsComponent objects which have been found.
[transfer container][element-type AsComponent]
GPtrArray * as_pool_get_components_by_categories (AsPool *pool
,gchar **categories
);
Return a list of components which are in one of the categories.
an array of AsComponent objects which have been found.
[transfer container][element-type AsComponent]
GPtrArray * as_pool_get_components_by_launchable (AsPool *pool
,AsLaunchableKind kind
,const gchar *id
);
Find components in the AppStream data pool which provide a specific launchable. See AsLaunchable for details on launchables, or refer to the AppStream specification.
an array of AsComponent objects which have been found.
[transfer container][element-type AsComponent]
Since: 0.11.4
GPtrArray * as_pool_search (AsPool *pool
,const gchar *search
);
Search for a list of components matching the search term. The list will be ordered by match score.
Since: 0.9.7
gchar ** as_pool_build_search_tokens (AsPool *pool
,const gchar *search
);
Splits up a string into an array of tokens that are suitable for searching. This includes stripping whitespaces, casefolding the terms and removing greylist words.
This function is usually called automatically when needed, you will only need to run it explicitly when you need to check which search tokens the pool will actually use internally for a given phrase.
void
as_pool_clear_metadata_locations (AsPool *pool
);
Remove all metadata locations from the list of watched locations.
void as_pool_add_metadata_location (AsPool *pool
,const gchar *directory
);
Add a location for the data pool to read data from.
If directory
contains a "xml", "xmls", "yaml" or "icons" subdirectory (or all of them),
those paths will be added to the search paths instead.
AsCacheFlags
as_pool_get_cache_flags (AsPool *pool
);
Get the AsCacheFlags for this data pool.
void as_pool_set_cache_flags (AsPool *pool
,AsCacheFlags flags
);
Set the AsCacheFlags for this data pool.
AsPoolFlags
as_pool_get_flags (AsPool *pool
);
Get the AsPoolFlags for this data pool.
void as_pool_set_flags (AsPool *pool
,AsPoolFlags flags
);
Set the AsPoolFlags for this data pool.
const gchar *
as_pool_get_cache_location (AsPool *pool
);
Gets the location of the session cache.
void as_pool_set_cache_location (AsPool *pool
,const gchar *fname
);
Sets the name of the cache file. If fname
is ":memory", the cache will be
kept in memory, if it is set to ":temporary", the cache will be stored in
a temporary directory. In any other case, the given filename is used.
Since: 0.12.7
gboolean as_pool_load_cache_file (AsPool *pool
,const gchar *fname
,GError **error
);
as_pool_load_cache_file
is deprecated and should not be used in newly-written code.
Load AppStream metadata from a cache file.
pool |
An instance of AsPool. |
|
fname |
Filename of the cache file to load into the pool. |
|
error |
A GError or |
gboolean as_pool_save_cache_file (AsPool *pool
,const gchar *fname
,GError **error
);
as_pool_save_cache_file
is deprecated and should not be used in newly-written code.
Serialize AppStream metadata to a cache file.
pool |
An instance of AsPool. |
|
fname |
Filename of the cache file the pool contents should be dumped to. |
|
error |
A GError or |
gboolean as_pool_refresh_cache (AsPool *pool
,gboolean force
,GError **error
);
as_pool_refresh_cache
is deprecated and should not be used in newly-written code.
Update the AppStream cache. There is normally no need to call this function manually, because cache updates are handled transparently in the background.
Flags on how caching should be used.
A metadata pool error.