### Class

# AppStream Pool

#### Description

    class AppStream.Pool : GObject.Object
    {
      /* No available fields */
    }

No description available.

#### Ancestors

- GObject

#### Constructors

###### as_pool_new

Creates a new `AsPool`.

#### Instance methods

###### as_pool_add_components

Register a set of components with the pool temporarily. Data from components added like this will not be cached.

since: 0.15.0

###### as_pool_add_extra_data_location

Add an additional non-standard location to the metadata pool where metadata will be read 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.

###### as_pool_add_flags

Convenience function to add one or multiple `AsPoolFlags` to the flag set of this data pool.

since: 0.15.0

###### as_pool_build_search_tokens

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.

###### as_pool_clear

Remove all metadata from the pool, data will be reloaded once %as_pool_load is called again.

###### as_pool_get_components

Get a list of found components.

###### as_pool_get_components_by_bundle_id

Find components that are provided by a bundle with a specific ID by its prefix. For example, given a AS_BUNDLE_KIND_FLATPAK and a bundle_id “org.kde.dolphin/”, it will list all the components that bundle dolphin. If the bundle_id is “org.kde.dolphin/x86_64” it will give those with also the architecture.

since: 0.16.0

###### as_pool_get_components_by_categories

Return a list of components which are in all of the categories.

###### as_pool_get_components_by_extends

Find components extending the component with the given ID. They can then be registered to the `AsComponent` they extend via %as_component_add_addon. If the `AS_POOL_FLAG_RESOLVE_ADDONS` pool flag is set, addons are automatically resolved and this explicit function is not needed, but overall query time will be increased (so only use this flag if you will be resolving addon information later anyway).

since: 0.15.0

###### as_pool_get_components_by_id

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.

###### as_pool_get_components_by_kind

Return a list of all components in the pool which are of a certain kind.

###### as_pool_get_components_by_launchable

Find components in the AppStream data pool which provide a specific launchable. See `AsLaunchable` for details on launchables, or refer to the AppStream specification.

since: 0.11.4

###### as_pool_get_components_by_provided_item

Find components in the AppStream data pool which provide a certain item. Provided items of type `AS_PROVIDED_KIND_MODALIAS` may contain wildcards, which are matched against the searched item as well.

###### as_pool_get_flags

Get the `AsPoolFlags` for this data pool.

###### as_pool_get_locale

Gets the currently used locale.

###### as_pool_is_empty

Check if this pool contains any data.

###### as_pool_load

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.

###### as_pool_load_async

Asynchronously loads data from all registered locations. Equivalent to `as_pool_load()` (but asynchronous).

since: 0.12.10

###### as_pool_load_finish

Retrieve the result of as_pool_load_async().

since: 0.12.10

###### as_pool_remove_flags

Convenience function to remove one or multiple `AsPoolFlags` from the flag set of this data pool.

since: 0.15.0

###### as_pool_reset_extra_data_locations

Remove all explicitly added metadata locations.

since: 0.15.0

###### as_pool_search

Search for a list of components matching the search term. The list will be ordered by match score.

since: 0.9.7

###### as_pool_set_flags

Set the `AsPoolFlags` for this data pool.

###### as_pool_set_load_std_data_locations

This is a convenience function that enables or disables loading of metadata from well-known standard locations by configuring the `AsPoolFlags` of this `AsPool` accordingly. Data affected by this includes the OS data catalog, metainfo, desktop-entry files and Flatpak data. If you need more fine-grained control, set the `AsPoolFlags` explicitly.

since: 0.15.0

###### as_pool_set_locale

Sets the current locale which should be used when parsing metadata.

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

Please see GObject for a full list of methods.

#### Signals

###### AppStream.Pool::changed

The ::changed signal is emitted when components have been added or removed from the metadata pool.

since: 0.15.0

##### 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 AppStreamPoolClass {
      GObjectClass parent_class;
      void (* changed) (
        AsPool* pool
      );
      void (* _as_reserved1) (
    void
      );
      void (* _as_reserved2) (
    void
      );
      void (* _as_reserved3) (
    void
      );
      void (* _as_reserved4) (
    void
      );
      void (* _as_reserved5) (
    void
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`changed: void (* changed) ( AsPool* pool )`

  No description available.

`_as_reserved1: void (* _as_reserved1) ( void )`

  No description available.

`_as_reserved2: void (* _as_reserved2) ( void )`

  No description available.

`_as_reserved3: void (* _as_reserved3) ( void )`

  No description available.

`_as_reserved4: void (* _as_reserved4) ( void )`

  No description available.

`_as_reserved5: void (* _as_reserved5) ( void )`

  No description available.

#### Virtual methods

###### AppStream.PoolClass.changed

No description available.