AsComponent

AsComponent — Object representing a software component

Functions

const gchar * as_component_kind_to_string ()
AsComponentKind as_component_kind_from_string ()
const gchar * as_merge_kind_to_string ()
AsMergeKind as_merge_kind_from_string ()
AsComponent * as_component_new ()
AsValueFlags as_component_get_value_flags ()
void as_component_set_value_flags ()
const gchar * as_component_get_active_locale ()
void as_component_set_active_locale ()
const gchar * as_component_get_id ()
void as_component_set_id ()
const gchar * as_component_get_data_id ()
void as_component_set_data_id ()
AsComponentKind as_component_get_kind ()
void as_component_set_kind ()
const gchar * as_component_get_origin ()
void as_component_set_origin ()
gchar * as_component_get_pkgname ()
gchar ** as_component_get_pkgnames ()
void as_component_set_pkgnames ()
const gchar * as_component_get_source_pkgname ()
void as_component_set_source_pkgname ()
const gchar * as_component_get_name ()
void as_component_set_name ()
const gchar * as_component_get_summary ()
void as_component_set_summary ()
const gchar * as_component_get_description ()
void as_component_set_description ()
GPtrArray * as_component_get_launchables ()
AsLaunchable * as_component_get_launchable ()
void as_component_add_launchable ()
const gchar * as_component_get_metadata_license ()
void as_component_set_metadata_license ()
const gchar * as_component_get_project_license ()
void as_component_set_project_license ()
const gchar * as_component_get_project_group ()
void as_component_set_project_group ()
const gchar * as_component_get_developer_name ()
void as_component_set_developer_name ()
GPtrArray * as_component_get_compulsory_for_desktops ()
void as_component_set_compulsory_for_desktop ()
gboolean as_component_is_compulsory_for_desktop ()
GPtrArray * as_component_get_categories ()
void as_component_add_category ()
gboolean as_component_has_category ()
GPtrArray * as_component_get_screenshots ()
void as_component_add_screenshot ()
gchar ** as_component_get_keywords ()
void as_component_set_keywords ()
GPtrArray * as_component_get_icons ()
AsIcon * as_component_get_icon_by_size ()
void as_component_add_icon ()
GPtrArray * as_component_get_provided ()
void as_component_add_provided ()
AsProvided * as_component_get_provided_for_kind ()
const gchar * as_component_get_url ()
void as_component_add_url ()
GPtrArray * as_component_get_releases ()
void as_component_add_release ()
GPtrArray * as_component_get_extends ()
void as_component_add_extends ()
GPtrArray * as_component_get_addons ()
void as_component_add_addon ()
GList * as_component_get_languages ()
gint as_component_get_language ()
void as_component_add_language ()
GPtrArray * as_component_get_translations ()
void as_component_add_translation ()
gboolean as_component_has_bundle ()
GPtrArray * as_component_get_bundles ()
AsBundle * as_component_get_bundle ()
void as_component_add_bundle ()
GPtrArray * as_component_get_suggested ()
void as_component_add_suggested ()
GPtrArray * as_component_get_search_tokens ()
guint as_component_search_matches ()
guint as_component_search_matches_all ()
AsMergeKind as_component_get_merge_kind ()
void as_component_set_merge_kind ()
gboolean as_component_is_member_of_category ()
gboolean as_component_is_ignored ()
gboolean as_component_is_valid ()
gchar * as_component_to_string ()
GHashTable * as_component_get_custom ()
const gchar * as_component_get_custom_value ()
gboolean as_component_insert_custom_value ()
GPtrArray * as_component_get_content_ratings ()
AsContentRating * as_component_get_content_rating ()
void as_component_add_content_rating ()
GPtrArray * as_component_get_recommends ()
GPtrArray * as_component_get_requires ()
void as_component_add_relation ()
void as_component_add_agreement ()
AsAgreement * as_component_get_agreement_by_kind ()
const gchar * as_component_get_desktop_id ()

Types and Values

Includes

#include <appstream.h>

Description

This object represents an Appstream software component which is associated to a package in the distribution's repositories. A component can be anything, ranging from an application to a font, a codec or even a non-visual software project providing libraries and python-modules for other applications to use.

The type of the component is stored as AsComponentKind and can be queried to find out which kind of component we're dealing with.

See also: AsProvidesKind, AsDatabase

Functions

as_component_kind_to_string ()

const gchar *
as_component_kind_to_string (AsComponentKind kind);

Converts the enumerated value to an text representation.

Parameters

kind

the AsComponentKind.

 

Returns

string version of kind


as_component_kind_from_string ()

AsComponentKind
as_component_kind_from_string (const gchar *kind_str);

Converts the text representation to an enumerated value.

Parameters

kind_str

the string.

 

Returns

a AsComponentKind or AS_COMPONENT_KIND_UNKNOWN for unknown


as_merge_kind_to_string ()

const gchar *
as_merge_kind_to_string (AsMergeKind kind);

Converts the enumerated value to an text representation.

Parameters

kind

the AsMergeKind.

 

Returns

string version of kind


as_merge_kind_from_string ()

AsMergeKind
as_merge_kind_from_string (const gchar *kind_str);

Converts the text representation to an enumerated value.

Parameters

kind_str

the string.

 

Returns

a AsMergeKind or AS_MERGE_KIND_NONE for unknown


as_component_new ()

AsComponent *
as_component_new (void);

Creates a new AsComponent.

Returns

a new AsComponent.

[transfer full]


as_component_get_value_flags ()

AsValueFlags
as_component_get_value_flags (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

The AsValueFlags that are set on cpt .


as_component_set_value_flags ()

void
as_component_set_value_flags (AsComponent *cpt,
                              AsValueFlags flags);

Parameters

cpt

a AsComponent instance.

 

flags

AsValueFlags to set on cpt .

 

as_component_get_active_locale ()

const gchar *
as_component_get_active_locale (AsComponent *cpt);

Get the current active locale for this component, which is used to get localized messages.

Parameters

cpt

a AsComponent instance.

 

Returns

the current active locale.


as_component_set_active_locale ()

void
as_component_set_active_locale (AsComponent *cpt,
                                const gchar *locale);

Set the current active locale for this component, which is used to get localized messages. If the AsComponent was fetched from a localized database, usually only one locale is available.

Parameters

cpt

a AsComponent instance.

 

locale

the locale, or NULL. e.g. "en_GB".

[nullable]

as_component_get_id ()

const gchar *
as_component_get_id (AsComponent *cpt);

Get the unique AppStream identifier for this component. This ID is unique for the described component, but does not uniquely identify the metadata set.

For a unique ID for this metadata set in the current session, use as_component_get_data_id()

Parameters

cpt

a AsComponent instance.

 

Returns

the unique AppStream identifier.


as_component_set_id ()

void
as_component_set_id (AsComponent *cpt,
                     const gchar *value);

Set the AppStream identifier for this component.

Parameters

cpt

a AsComponent instance.

 

value

the unique identifier.

 

as_component_get_data_id ()

const gchar *
as_component_get_data_id (AsComponent *cpt);

Get a unique identifier for this metadata set. This unique ID is only valid for the current session, as opposed to the AppStream ID which uniquely identifies a software component.

The format of the unique id usually is: %{scope}/%{origin}/%{distribution_system}/%{appstream_id}

For example: system/os/package/org.example.FooBar

Parameters

cpt

a AsComponent instance.

 

Returns

the unique session-specific identifier.


as_component_set_data_id ()

void
as_component_set_data_id (AsComponent *cpt,
                          const gchar *value);

Set the session-specific unique metadata identifier for this component. If two components have a different data_id but the same ID, they will be treated as independent sets of metadata describing the same component type.

Parameters

cpt

a AsComponent instance.

 

value

the unique session-specific identifier.

 

as_component_get_kind ()

AsComponentKind
as_component_get_kind (AsComponent *cpt);

Returns the AsComponentKind of this component.

Parameters

cpt

a AsComponent instance.

 

Returns

the kind of this.


as_component_set_kind ()

void
as_component_set_kind (AsComponent *cpt,
                       AsComponentKind value);

Sets the AsComponentKind of this component.

Parameters

cpt

a AsComponent instance.

 

value

the AsComponentKind.

 

as_component_get_origin ()

const gchar *
as_component_get_origin (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

as_component_set_origin ()

void
as_component_set_origin (AsComponent *cpt,
                         const gchar *origin);

Parameters

cpt

a AsComponent instance.

 

origin

the origin.

 

as_component_get_pkgname ()

gchar *
as_component_get_pkgname (AsComponent *cpt);

Get the first package name of the list of packages that need to be installed for this component to be present on the system. Since most components consist of only one package, this is safe to use for about 90% of all cases.

However, to support a component fully, please use as_component_get_pkgnames() for getting all packages that need to be installed, and use this method only to e.g. get the main package to perform a quick "is it installed?" check.

Parameters

cpt

a AsComponent instance.

 

Returns

String array of package names.

[transfer none]


as_component_get_pkgnames ()

gchar **
as_component_get_pkgnames (AsComponent *cpt);

Get a list of package names which this component consists of. This usually is just one package name.

Parameters

cpt

a AsComponent instance.

 

Returns

String array of package names.

[transfer none]


as_component_set_pkgnames ()

void
as_component_set_pkgnames (AsComponent *cpt,
                           gchar **packages);

Set a list of package names this component consists of. (This should usually be just one package name)

Parameters

cpt

a AsComponent instance.

 

packages

.

[array zero-terminated=1]

as_component_get_source_pkgname ()

const gchar *
as_component_get_source_pkgname (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

the source package name.


as_component_set_source_pkgname ()

void
as_component_set_source_pkgname (AsComponent *cpt,
                                 const gchar *spkgname);

Parameters

cpt

a AsComponent instance.

 

spkgname

the source package name.

 

as_component_get_name ()

const gchar *
as_component_get_name (AsComponent *cpt);

A human-readable name for this component.

Parameters

cpt

a AsComponent instance.

 

Returns

the name.


as_component_set_name ()

void
as_component_set_name (AsComponent *cpt,
                       const gchar *value,
                       const gchar *locale);

Set a human-readable name for this component.

Parameters

cpt

A valid AsComponent

 

value

The name

 

locale

The locale the used for this value, or NULL to use the current active one.

[nullable]

as_component_get_summary ()

const gchar *
as_component_get_summary (AsComponent *cpt);

Get a short description of this component.

Parameters

cpt

a AsComponent instance.

 

Returns

the summary.


as_component_set_summary ()

void
as_component_set_summary (AsComponent *cpt,
                          const gchar *value,
                          const gchar *locale);

Set a short description for this component.

Parameters

cpt

A valid AsComponent

 

value

The summary

 

locale

The locale the used for this value, or NULL to use the current active one.

[nullable]

as_component_get_description ()

const gchar *
as_component_get_description (AsComponent *cpt);

Get the localized long description of this component.

Parameters

cpt

a AsComponent instance.

 

Returns

the description.


as_component_set_description ()

void
as_component_set_description (AsComponent *cpt,
                              const gchar *value,
                              const gchar *locale);

Set long description for this component.

Parameters

cpt

A valid AsComponent

 

value

The long description

 

locale

The locale the used for this value, or NULL to use the current active one.

[nullable]

as_component_get_launchables ()

GPtrArray *
as_component_get_launchables (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

an array.

[transfer none][element-type AsLaunchable]

Since: 0.11.0


as_component_get_launchable ()

AsLaunchable *
as_component_get_launchable (AsComponent *cpt,
                             AsLaunchableKind kind);

Gets a AsLaunchable of a specific type that contains launchable entries for this component.

Parameters

cpt

a AsComponent instance.

 

kind

a launch kind, e.g. AS_LAUNCHABLE_KIND_DESKTOP_ID

 

Returns

a AsLaunchable or NULL if not found.

[transfer none][nullable]

Since: 0.11.0


as_component_add_launchable ()

void
as_component_add_launchable (AsComponent *cpt,
                             AsLaunchable *launchable);

Adds a AsLaunchable containing launchables entries for this component.

Parameters

cpt

a AsComponent instance.

 

launchable

a AsLaunchable instance.

 

Since: 0.11.0


as_component_get_metadata_license ()

const gchar *
as_component_get_metadata_license (AsComponent *cpt);

The license the metadata iself is subjected to.

Parameters

cpt

a AsComponent instance.

 

Returns

the license.


as_component_set_metadata_license ()

void
as_component_set_metadata_license (AsComponent *cpt,
                                   const gchar *value);

Set the license this metadata is licensed under.

Parameters

cpt

a AsComponent instance.

 

value

the metadata license.

 

as_component_get_project_license ()

const gchar *
as_component_get_project_license (AsComponent *cpt);

Get the license of the project this component belongs to.

Parameters

cpt

a AsComponent instance.

 

Returns

the license.


as_component_set_project_license ()

void
as_component_set_project_license (AsComponent *cpt,
                                  const gchar *value);

Set the project license.

Parameters

cpt

a AsComponent instance.

 

value

the project license.

 

as_component_get_project_group ()

const gchar *
as_component_get_project_group (AsComponent *cpt);

Get the component's project group.

Parameters

cpt

a AsComponent instance.

 

Returns

the project group.


as_component_set_project_group ()

void
as_component_set_project_group (AsComponent *cpt,
                                const gchar *value);

Set the component's project group.

Parameters

cpt

a AsComponent instance.

 

value

the project group.

 

as_component_get_developer_name ()

const gchar *
as_component_get_developer_name (AsComponent *cpt);

Get the component's developer or development team name.

Parameters

cpt

a AsComponent instance.

 

Returns

the developer name.


as_component_set_developer_name ()

void
as_component_set_developer_name (AsComponent *cpt,
                                 const gchar *value,
                                 const gchar *locale);

Set the the component's developer or development team name.

Parameters

cpt

a AsComponent instance.

 

value

the developer or developer team name

 

locale

the locale, or NULL. e.g. "en_GB".

[nullable]

as_component_get_compulsory_for_desktops ()

GPtrArray *
as_component_get_compulsory_for_desktops
                               (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

A list of desktops where this component is compulsory.

[transfer none][element-type utf8]


as_component_set_compulsory_for_desktop ()

void
as_component_set_compulsory_for_desktop
                               (AsComponent *cpt,
                                const gchar *desktop);

Mark this component to be compulsory for the specified desktop environment.

Parameters

cpt

a AsComponent instance.

 

desktop

The name of the desktop.

 

as_component_is_compulsory_for_desktop ()

gboolean
as_component_is_compulsory_for_desktop
                               (AsComponent *cpt,
                                const gchar *desktop);

Check if this component is compulsory for the given desktop.

Parameters

cpt

an AsComponent object

 

desktop

the desktop-id to test for

 

Returns

TRUE if compulsory, FALSE otherwise.


as_component_get_categories ()

GPtrArray *
as_component_get_categories (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

String array of categories.

[transfer none][element-type utf8]


as_component_add_category ()

void
as_component_add_category (AsComponent *cpt,
                           const gchar *category);

Add a category.

Parameters

cpt

a AsComponent instance.

 

category

the categories name to add.

 

as_component_has_category ()

gboolean
as_component_has_category (AsComponent *cpt,
                           const gchar *category);

Check if component is in the specified category.

Parameters

cpt

an AsComponent object

 

category

the specified category to check

 

Returns

TRUE if the component is in the specified category.


as_component_get_screenshots ()

GPtrArray *
as_component_get_screenshots (AsComponent *cpt);

Get a list of associated screenshots.

Parameters

cpt

a AsComponent instance.

 

Returns

an array of AsScreenshot instances.

[element-type AsScreenshot][transfer none]


as_component_add_screenshot ()

void
as_component_add_screenshot (AsComponent *cpt,
                             AsScreenshot *sshot);

Add an AsScreenshot to this component.

Parameters

cpt

a AsComponent instance.

 

sshot

The AsScreenshot to add

 

as_component_get_keywords ()

gchar **
as_component_get_keywords (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

String array of keywords.

[transfer none]


as_component_set_keywords ()

void
as_component_set_keywords (AsComponent *cpt,
                           gchar **value,
                           const gchar *locale);

Set keywords for this component.

Parameters

cpt

a AsComponent instance.

 

value

String-array of keywords.

[array zero-terminated=1]

locale

Locale of the values, or NULL to use current locale.

[nullable]

as_component_get_icons ()

GPtrArray *
as_component_get_icons (AsComponent *cpt);

Parameters

cpt

an AsComponent instance

 

Returns

A GPtrArray of all icons for this component.

[element-type AsIcon][transfer none]


as_component_get_icon_by_size ()

AsIcon *
as_component_get_icon_by_size (AsComponent *cpt,
                               guint width,
                               guint height);

Gets an icon matching the size constraints. The icons are not filtered by type, and the first icon which matches the size is returned. If you want more control over which icons you use for displaying, use the as_component_get_icons() function to get a list of all icons.

Note that this function is not HiDPI aware! It will never return an icon with a scaling factor > 1.

Parameters

cpt

an AsComponent instance

 

width

The icon width in pixels.

 

height

the icon height in pixels.

 

Returns

An icon matching the given width/height, or NULL if not found.

[transfer none][nullable]


as_component_add_icon ()

void
as_component_add_icon (AsComponent *cpt,
                       AsIcon *icon);

Add an icon to this component.

Parameters

cpt

an AsComponent instance

 

icon

the valid AsIcon instance to add.

 

as_component_get_provided ()

GPtrArray *
as_component_get_provided (AsComponent *cpt);

Get a list of AsProvided objects associated with this component.

Parameters

cpt

a AsComponent instance.

 

Returns

A list of AsProvided objects.

[transfer none][element-type AsProvided]


as_component_add_provided ()

void
as_component_add_provided (AsComponent *cpt,
                           AsProvided *prov);

Add a set of provided items to this component.

Parameters

cpt

a AsComponent instance.

 

prov

a AsProvided instance.

 

Since: 0.6.2


as_component_get_provided_for_kind ()

AsProvided *
as_component_get_provided_for_kind (AsComponent *cpt,
                                    AsProvidedKind kind);

Get an AsProvided object for the given interface type, containing information about the public interfaces (mimetypes, firmware, DBus services, ...) this component provides.

Parameters

cpt

a AsComponent instance.

 

kind

kind of the provided item, e.g. AS_PROVIDED_KIND_MIMETYPE

 

Returns

AsProvided containing the items this component provides, or NULL.

[transfer none][nullable]


as_component_get_url ()

const gchar *
as_component_get_url (AsComponent *cpt,
                      AsUrlKind url_kind);

Gets a URL.

Parameters

cpt

a AsComponent instance.

 

url_kind

the URL kind, e.g. AS_URL_KIND_HOMEPAGE.

 

Returns

string, or NULL if unset.

[nullable]

Since: 0.6.2


as_component_add_url ()

void
as_component_add_url (AsComponent *cpt,
                      AsUrlKind url_kind,
                      const gchar *url);

Adds some URL data to the component.

Parameters

cpt

a AsComponent instance.

 

url_kind

the URL kind, e.g. AS_URL_KIND_HOMEPAGE

 

url

the full URL.

 

Since: 0.6.2


as_component_get_releases ()

GPtrArray *
as_component_get_releases (AsComponent *cpt);

Get an array of the AsRelease items this component provides.

Parameters

cpt

a AsComponent instance.

 

Returns

A list of releases.

[element-type AsRelease][transfer none]


as_component_add_release ()

void
as_component_add_release (AsComponent *cpt,
                          AsRelease *release);

Add an AsRelease to this component.

Parameters

cpt

a AsComponent instance.

 

release

The AsRelease to add

 

as_component_get_extends ()

GPtrArray *
as_component_get_extends (AsComponent *cpt);

Returns a string list of IDs of components which are extended by this addon.

See as_component_get_extends() for the reverse.

Parameters

cpt

an AsComponent instance.

 

Returns

A GPtrArray or NULL if not set.

[element-type utf8][transfer none][nullable]

Since: 0.7.0


as_component_add_extends ()

void
as_component_add_extends (AsComponent *cpt,
                          const gchar *cpt_id);

Add a reference to the extended component

Parameters

cpt

a AsComponent instance.

 

cpt_id

The id of a component which is extended by this component

 

Since: 0.7.0


as_component_get_addons ()

GPtrArray *
as_component_get_addons (AsComponent *cpt);

Returns a list of AsComponent objects which are addons extending this component in functionality.

This is the reverse of as_component_get_extends()

Parameters

cpt

an AsComponent instance.

 

Returns

An array of AsComponent.

[transfer none][element-type AsComponent]

Since: 0.9.2


as_component_add_addon ()

void
as_component_add_addon (AsComponent *cpt,
                        AsComponent *addon);

Add a reference to the addon that is enhancing this component.

Parameters

cpt

a AsComponent instance.

 

addon

The AsComponent that extends cpt

 

Since: 0.9.2


as_component_get_languages ()

GList *
as_component_get_languages (AsComponent *cpt);

Get a list of all languages.

Parameters

cpt

an AsComponent instance.

 

Returns

list of locales.

[transfer container][element-type utf8]

Since: 0.7.0


as_component_get_language ()

gint
as_component_get_language (AsComponent *cpt,
                           const gchar *locale);

Gets the translation coverage in percent for a specific locale

Parameters

cpt

an AsComponent instance.

 

locale

the locale, or NULL. e.g. "en_GB".

[nullable]

Returns

a percentage value, -1 if locale was not found

Since: 0.7.0


as_component_add_language ()

void
as_component_add_language (AsComponent *cpt,
                           const gchar *locale,
                           gint percentage);

Adds a language to the component.

Parameters

cpt

an AsComponent instance.

 

locale

the locale, or NULL. e.g. "en_GB".

[nullable]

percentage

the percentage completion of the translation, 0 for locales with unknown amount of translation

 

Since: 0.7.0


as_component_get_translations ()

GPtrArray *
as_component_get_translations (AsComponent *cpt);

Get a GPtrArray of AsTranslation objects describing the translation systems and translation-ids (e.g. Gettext domains) used by this software component.

Only set for metainfo files.

Parameters

cpt

an AsComponent instance.

 

Returns

An array of AsTranslation objects.

[transfer none][element-type AsTranslation]

Since: 0.9.2


as_component_add_translation ()

void
as_component_add_translation (AsComponent *cpt,
                              AsTranslation *tr);

Assign an AsTranslation object describing the translation system used by this component.

Parameters

cpt

an AsComponent instance.

 

tr

an AsTranslation instance.

 

Since: 0.9.2


as_component_has_bundle ()

gboolean
as_component_has_bundle (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

TRUE if this component has a bundle associated.


as_component_get_bundles ()

GPtrArray *
as_component_get_bundles (AsComponent *cpt);

Get a list of all software bundles associated with this component.

Parameters

cpt

a AsComponent instance.

 

Returns

A list of AsBundle.

[transfer none][element-type AsBundle]

Since: 0.10


as_component_get_bundle ()

AsBundle *
as_component_get_bundle (AsComponent *cpt,
                         AsBundleKind bundle_kind);

Gets a bundle identifier string.

Parameters

cpt

a AsComponent instance.

 

bundle_kind

the bundle kind, e.g. AS_BUNDLE_KIND_LIMBA.

 

Returns

An AsBundle, or NULL if not set.

[transfer none][nullable]

Since: 0.8.0


as_component_add_bundle ()

void
as_component_add_bundle (AsComponent *cpt,
                         AsBundle *bundle);

Adds a bundle to the component.

Parameters

cpt

a AsComponent instance.

 

bundle

The AsBundle to add.

 

Since: 0.8.0


as_component_get_suggested ()

GPtrArray *
as_component_get_suggested (AsComponent *cpt);

Get a list of associated suggestions.

Parameters

cpt

a AsComponent instance.

 

Returns

an array of AsSuggested instances.

[transfer none][element-type AsSuggested]


as_component_add_suggested ()

void
as_component_add_suggested (AsComponent *cpt,
                            AsSuggested *suggested);

Add an AsSuggested to this component.

Parameters

cpt

a AsComponent instance.

 

suggested

The AsSuggested

 

as_component_get_search_tokens ()

GPtrArray *
as_component_get_search_tokens (AsComponent *cpt);

Returns all search tokens for this component.

Parameters

cpt

a AsComponent instance.

 

Returns

The string search tokens.

[transfer container][element-type utf8]

Since: 0.9.7


as_component_search_matches ()

guint
as_component_search_matches (AsComponent *cpt,
                             const gchar *term);

Searches component data for a specific keyword.

Parameters

cpt

a AsComponent instance.

 

term

the search term.

 

Returns

a match scrore, where 0 is no match and 100 is the best match.

Since: 0.9.7


as_component_search_matches_all ()

guint
as_component_search_matches_all (AsComponent *cpt,
                                 gchar **terms);

Searches component data for all the specific keywords.

Parameters

cpt

a AsComponent instance.

 

terms

the search terms.

 

Returns

a match score, where 0 is no match and larger numbers are better matches.

Since: 0.9.8


as_component_get_merge_kind ()

AsMergeKind
as_component_get_merge_kind (AsComponent *cpt);

Get the merge method which should apply to duplicate components with this ID.

Parameters

cpt

a AsComponent instance.

 

Returns

the AsMergeKind of this component.

Since: 0.9.8


as_component_set_merge_kind ()

void
as_component_set_merge_kind (AsComponent *cpt,
                             AsMergeKind kind);

Sets the AsMergeKind for this component.

Parameters

cpt

a AsComponent instance.

 

kind

the AsMergeKind.

 

Since: 0.9.8


as_component_is_member_of_category ()

gboolean
as_component_is_member_of_category (AsComponent *cpt,
                                    AsCategory *category);

Test if the component cpt is a member of category category .

Parameters

cpt

a AsComponent instance.

 

category

The category to test.

 

as_component_is_ignored ()

gboolean
as_component_is_ignored (AsComponent *cpt);

Parameters

cpt

a AsComponent instance.

 

Returns

Whether this component's metadata should be ignored.

Since: 0.10.2


as_component_is_valid ()

gboolean
as_component_is_valid (AsComponent *cpt);

Check if the essential properties of this Component are populated with useful data.

Parameters

cpt

a AsComponent instance.

 

Returns

TRUE if the component data was validated successfully.


as_component_to_string ()

gchar *
as_component_to_string (AsComponent *cpt);

Returns a string identifying this component. (useful for debugging)

Parameters

cpt

a AsComponent instance.

 

Returns

A descriptive string.

[transfer full]


as_component_get_custom ()

GHashTable *
as_component_get_custom (AsComponent *cpt);

Parameters

cpt

An AsComponent.

 

Returns

Hash table of custom user defined data fields.

[transfer none]

Since: 0.10.5


as_component_get_custom_value ()

const gchar *
as_component_get_custom_value (AsComponent *cpt,
                               const gchar *key);

Retrieve value for a custom data entry with the given key.

Parameters

cpt

An AsComponent.

 

key

Field name.

 

Since: 0.10.5


as_component_insert_custom_value ()

gboolean
as_component_insert_custom_value (AsComponent *cpt,
                                  const gchar *key,
                                  const gchar *value);

Add a key and value pair to the custom data table.

Parameters

cpt

An AsComponent.

 

key

Key name.

 

value

A string value.

 

Returns

TRUE if the key did not exist yet.

Since: 0.10.5


as_component_get_content_ratings ()

GPtrArray *
as_component_get_content_ratings (AsComponent *cpt);

Gets all content ratings defined for this software.

Parameters

cpt

a AsComponent instance.

 

Returns

an array.

[element-type AsContentRating][transfer none]

Since: 0.11.0


as_component_get_content_rating ()

AsContentRating *
as_component_get_content_rating (AsComponent *cpt,
                                 const gchar *kind);

Gets a content ratings of a specific type that are defined for this component.

Parameters

cpt

a AsComponent instance.

 

kind

a ratings kind, e.g. "oars-1.0"

 

Returns

a AsContentRating or NULL if not found.

[transfer none][nullable]

Since: 0.11.0


as_component_add_content_rating ()

void
as_component_add_content_rating (AsComponent *cpt,
                                 AsContentRating *content_rating);

Adds a content rating to this component.

Parameters

cpt

a AsComponent instance.

 

content_rating

a AsContentRating instance.

 

Since: 0.11.0


as_component_get_recommends ()

GPtrArray *
as_component_get_recommends (AsComponent *cpt);

Get an array of items that are recommended by this component.

Parameters

cpt

a AsComponent instance.

 

Returns

an array.

[transfer none][element-type AsRelation]

Since: 0.12.0


as_component_get_requires ()

GPtrArray *
as_component_get_requires (AsComponent *cpt);

Get an array of items that are required by this component.

Parameters

cpt

a AsComponent instance.

 

Returns

an array.

[transfer none][element-type AsRelation]

Since: 0.12.0


as_component_add_relation ()

void
as_component_add_relation (AsComponent *cpt,
                           AsRelation *relation);

Adds a AsRelation to set a recommends or requires relation of component cpt on the item mentioned in the AsRelation.

Parameters

cpt

a AsComponent instance.

 

relation

a AsRelation instance.

 

Since: 0.12.0


as_component_add_agreement ()

void
as_component_add_agreement (AsComponent *cpt,
                            AsAgreement *agreement);

Adds an agreement to the software component.

Parameters

cpt

a AsComponent instance.

 

agreement

an AsAgreement instance.

 

Since: 0.12.1


as_component_get_agreement_by_kind ()

AsAgreement *
as_component_get_agreement_by_kind (AsComponent *cpt,
                                    AsAgreementKind kind);

Gets an agreement the component has specified for the particular kind.

Parameters

cpt

a AsComponent instance.

 

kind

an agreement kind, e.g. AS_AGREEMENT_KIND_EULA

 

Returns

a AsAgreement or NULL for not found.

[transfer none][nullable]

Since: 0.12.1


as_component_get_desktop_id ()

const gchar *
as_component_get_desktop_id (AsComponent *cpt);

as_component_get_desktop_id has been deprecated since version 0.11.0 and should not be used in newly-written code.

Replaced by AsLaunchable and as_component_get_launchable

Get the Desktop Entry ID for this component, if it is of type "desktop-application". For most desktop-application components, this is the name of the .desktop file.

Refer to https://specifications.freedesktop.org/desktop-entry-spec/latest/ape.html for more information.

Parameters

cpt

a AsComponent instance.

 

Returns

The desktop file id.

Since: 0.9.8

Types and Values

AS_TYPE_COMPONENT

#define AS_TYPE_COMPONENT (as_component_get_type ())

struct AsComponentClass

struct AsComponentClass {
	GObjectClass		parent_class;
};

enum AsComponentKind

The type of an AsComponent.

Members

AS_COMPONENT_KIND_UNKNOWN

Type invalid or not known

 

AS_COMPONENT_KIND_GENERIC

A generic (= without specialized type) component

 

AS_COMPONENT_KIND_DESKTOP_APP

An application with a .desktop-file

 

AS_COMPONENT_KIND_CONSOLE_APP

A console application

 

AS_COMPONENT_KIND_WEB_APP

A web application

 

AS_COMPONENT_KIND_ADDON

An extension of existing software, which does not run standalone

 

AS_COMPONENT_KIND_FONT

A font

 

AS_COMPONENT_KIND_CODEC

A multimedia codec

 

AS_COMPONENT_KIND_INPUTMETHOD

An input-method provider

 

AS_COMPONENT_KIND_FIRMWARE

Firmware

 

AS_COMPONENT_KIND_DRIVER

A driver

 

AS_COMPONENT_KIND_LOCALIZATION

Software localization (usually l10n resources)

 

AS_COMPONENT_KIND_SERVICE

A system service launched by the init system

 

AS_COMPONENT_KIND_REPOSITORY

A remote software or data source

 

AS_COMPONENT_KIND_OPERATING_SYSTEM

A computer operating system

 

enum AsMergeKind

Defines how AsComponent data should be merged if the component is set for merge.

Members

AS_MERGE_KIND_NONE

No merge is happening.

 

AS_MERGE_KIND_REPLACE

Merge replacing data of target.

 

AS_MERGE_KIND_APPEND

Merge appending data to target.

 

AS_MERGE_KIND_REMOVE_COMPONENT

Remove the entire component if it matches.

 

enum AsComponentScope

Scope of the AsComponent (system-wide or user-scope)

Members

AS_COMPONENT_SCOPE_UNKNOWN

Unknown scope

 

AS_COMPONENT_SCOPE_SYSTEM

System scope

 

AS_COMPONENT_SCOPE_USER

User scope

 

enum AsValueFlags

Set how values assigned to an AsComponent should be treated when they are set or retrieved.

Members

AS_VALUE_FLAG_NONE

No flags.

 

AS_VALUE_FLAG_DUPLICATE_CHECK

Check for duplicates when adding items to list values.

 

AS_VALUE_FLAG_NO_TRANSLATION_FALLBACK

Don't fall back to C when retrieving translated values.

 

AsComponent

typedef struct _AsComponent AsComponent;