![]() |
![]() |
![]() |
AppStream-glib Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
#include <appstream-glib.h> enum AsStoreLoadFlags; enum AsStoreAddFlags; enum AsStoreError; #define AS_STORE_ERROR AsStore * as_store_new (void
); GQuark as_store_error_quark (void
); guint as_store_get_size (AsStore *store
); gboolean as_store_from_file (AsStore *store
,GFile *file
,const gchar *icon_root
,GCancellable *cancellable
,GError **error
); gboolean as_store_from_xml (AsStore *store
,const gchar *data
,gssize data_len
,const gchar *icon_root
,GError **error
); gboolean as_store_load (AsStore *store
,AsStoreLoadFlags flags
,GCancellable *cancellable
,GError **error
); gboolean as_store_load_path (AsStore *store
,const gchar *path
,GCancellable *cancellable
,GError **error
); void as_store_remove_all (AsStore *store
); GPtrArray * as_store_get_apps (AsStore *store
); GPtrArray * as_store_get_apps_by_metadata (AsStore *store
,const gchar *key
,const gchar *value
); AsApp * as_store_get_app_by_id (AsStore *store
,const gchar *id
); AsApp * as_store_get_app_by_pkgname (AsStore *store
,const gchar *pkgname
); void as_store_add_app (AsStore *store
,AsApp *app
); void as_store_remove_app (AsStore *store
,AsApp *app
); GString * as_store_to_xml (AsStore *store
,AsNodeToXmlFlags flags
); gboolean as_store_to_file (AsStore *store
,GFile *file
,AsNodeToXmlFlags flags
,GCancellable *cancellable
,GError **error
); const gchar * as_store_get_origin (AsStore *store
); void as_store_set_origin (AsStore *store
,const gchar *origin
); const gchar * as_store_get_builder_id (AsStore *store
); void as_store_set_builder_id (AsStore *store
,const gchar *builder_id
); const gchar * as_store_get_destdir (AsStore *store
); void as_store_set_destdir (AsStore *store
,const gchar *destdir
); gdouble as_store_get_api_version (AsStore *store
); void as_store_set_api_version (AsStore *store
,gdouble api_version
); AsStoreAddFlags as_store_get_add_flags (AsStore *store
); void as_store_set_add_flags (AsStore *store
,AsStoreAddFlags add_flags
); GPtrArray * as_store_validate (AsStore *store
,AsAppValidateFlags flags
,GError **error
);
This store contains both an array of AsApp's but also a pair of hashes to quickly retrieve an application from the ID or package name.
Applications can also be removed, and the whole store can be loaded and saved to a compressed XML file.
See also: AsApp
typedef enum { AS_STORE_LOAD_FLAG_NONE = 0, /* Since: 0.1.2 */ AS_STORE_LOAD_FLAG_APP_INFO_SYSTEM = 1, /* Since: 0.1.2 */ AS_STORE_LOAD_FLAG_APP_INFO_USER = 2, /* Since: 0.1.2 */ AS_STORE_LOAD_FLAG_APP_INSTALL = 4, /* Since: 0.1.2 */ AS_STORE_LOAD_FLAG_APPDATA = 8, /* Since: 0.2.2 */ AS_STORE_LOAD_FLAG_DESKTOP = 16, /* Since: 0.2.2 */ AS_STORE_LOAD_FLAG_ALLOW_VETO = 32, /* Since: 0.2.5 */ } AsStoreLoadFlags;
The flags to use when loading the store.
No extra flags to use | |
The system app-info AppStream data | |
The per-user app-info AppStream data | |
The ubuntu-specific app-install data | |
The installed AppData files | |
The installed desktop files | |
Add vetoed applications |
typedef enum { AS_STORE_ADD_FLAG_NONE = 0, /* Since: 0.2.2 */ AS_STORE_ADD_FLAG_PREFER_LOCAL = 1, /* Since: 0.2.2 */ } AsStoreAddFlags;
The flags to use when adding applications to the store.
AsStore * as_store_new (void
);
Creates a new AsStore.
Returns : |
a AsStore. [transfer full] |
Since 0.1.0
guint as_store_get_size (AsStore *store
);
Gets the size of the store after deduplication and prioritization has taken place.
|
a AsStore instance. |
Returns : |
the number of usable applications in the store |
Since 0.1.0
gboolean as_store_from_file (AsStore *store
,GFile *file
,const gchar *icon_root
,GCancellable *cancellable
,GError **error
);
Parses an AppStream XML file and adds any valid applications to the store.
If the root node does not have a 'origin' attribute, then the method
as_store_set_origin()
should be called *before* this function if cached
icons are required.
|
a AsStore instance. |
|
a GFile. |
|
the icon path, or NULL for the default. |
|
a GCancellable. |
|
A GError or NULL . |
Returns : |
TRUE for success |
Since 0.1.0
gboolean as_store_from_xml (AsStore *store
,const gchar *data
,gssize data_len
,const gchar *icon_root
,GError **error
);
Parses AppStream XML file and adds any valid applications to the store.
If the root node does not have a 'origin' attribute, then the method
as_store_set_origin()
should be called *before* this function if cached
icons are required.
|
a AsStore instance. |
|
XML data |
|
Length of data , or -1 if NULL terminated |
|
the icon path, or NULL for the default. |
|
A GError or NULL . |
Returns : |
TRUE for success |
Since 0.1.1
gboolean as_store_load (AsStore *store
,AsStoreLoadFlags flags
,GCancellable *cancellable
,GError **error
);
Loads the store from the default locations.
|
a AsStore instance. |
|
AsStoreLoadFlags, e.g. AS_STORE_LOAD_FLAG_APP_INFO_SYSTEM
|
|
a GCancellable. |
|
A GError or NULL . |
Returns : |
TRUE for success |
Since 0.1.2
gboolean as_store_load_path (AsStore *store
,const gchar *path
,GCancellable *cancellable
,GError **error
);
Loads the store from a specific path.
|
a AsStore instance. |
|
A path to load |
|
a GCancellable. |
|
A GError or NULL . |
Returns : |
TRUE for success |
Since 0.2.2
void as_store_remove_all (AsStore *store
);
Removes all applications from the store.
|
a AsStore instance. |
Since 0.2.5
GPtrArray * as_store_get_apps (AsStore *store
);
Gets an array of all the valid applications in the store.
|
a AsStore instance. |
Returns : |
an array. [element-type AsApp][transfer none] |
Since 0.1.0
GPtrArray * as_store_get_apps_by_metadata (AsStore *store
,const gchar *key
,const gchar *value
);
Gets an array of all the applications that match a specific metadata element.
|
a AsStore instance. |
|
metadata key |
|
metadata value |
Returns : |
an array. [element-type AsApp][transfer container] |
Since 0.1.4
AsApp * as_store_get_app_by_id (AsStore *store
,const gchar *id
);
Finds an application in the store by ID.
|
a AsStore instance. |
|
the application full ID. |
Returns : |
a AsApp or NULL . [transfer none]
|
Since 0.1.0
AsApp * as_store_get_app_by_pkgname (AsStore *store
,const gchar *pkgname
);
Finds an application in the store by package name.
|
a AsStore instance. |
|
the package name. |
Returns : |
a AsApp or NULL . [transfer none]
|
Since 0.1.0
void as_store_add_app (AsStore *store
,AsApp *app
);
Adds an application to the store. If a lower priority application has already been added then this new application will replace it.
Additionally only applications where the kind is known will be added.
|
a AsStore instance. |
|
a AsApp instance. |
Since 0.1.0
void as_store_remove_app (AsStore *store
,AsApp *app
);
Removes an application from the store if it exists.
|
a AsStore instance. |
|
a AsApp instance. |
Since 0.1.0
GString * as_store_to_xml (AsStore *store
,AsNodeToXmlFlags flags
);
Outputs an XML representation of all the applications in the store.
|
a AsStore instance. |
|
the AsNodeToXmlFlags, e.g. AS_NODE_INSERT_FLAG_NONE . |
Returns : |
A GString |
Since 0.1.0
gboolean as_store_to_file (AsStore *store
,GFile *file
,AsNodeToXmlFlags flags
,GCancellable *cancellable
,GError **error
);
Outputs a compressed XML file of all the applications in the store.
|
a AsStore instance. |
|
file |
|
the AsNodeToXmlFlags, e.g. AS_NODE_INSERT_FLAG_NONE . |
|
A GCancellable, or NULL
|
|
A GError or NULL
|
Returns : |
A GString |
Since 0.1.0
const gchar * as_store_get_origin (AsStore *store
);
Gets the metadata origin, which is used to locate icons.
|
a AsStore instance. |
Returns : |
the origin string, or NULL if unset |
Since 0.1.1
void as_store_set_origin (AsStore *store
,const gchar *origin
);
Sets the metadata origin, which is used to locate icons.
|
a AsStore instance. |
|
the origin, e.g. "fedora-21" |
Since 0.1.1
const gchar * as_store_get_builder_id (AsStore *store
);
Gets the metadata builder identifier, which is used to work out if old metadata is compatible with this builder.
|
a AsStore instance. |
Returns : |
the builder_id string, or NULL if unset |
Since 0.2.5
void as_store_set_builder_id (AsStore *store
,const gchar *builder_id
);
Sets the metadata builder identifier, which is used to work out if old metadata can be used.
|
a AsStore instance. |
|
the builder_id, e.g. "appstream-glib:1" |
Since 0.2.5
const gchar * as_store_get_destdir (AsStore *store
);
Gets the destdir, which is used to prefix usr.
|
a AsStore instance. |
Returns : |
the destdir path, or NULL if unset |
Since 0.2.4
void as_store_set_destdir (AsStore *store
,const gchar *destdir
);
Sets the destdir, which is used to prefix usr.
|
a AsStore instance. |
|
the destdir, e.g. "/tmp" |
Since 0.2.4
gdouble as_store_get_api_version (AsStore *store
);
Gets the AppStream API version.
|
a AsStore instance. |
Returns : |
the AsNodeInsertFlags, or 0 if unset |
Since 0.1.1
void as_store_set_api_version (AsStore *store
,gdouble api_version
);
Sets the AppStream API version.
|
a AsStore instance. |
|
the API version |
Since 0.1.1
AsStoreAddFlags as_store_get_add_flags (AsStore *store
);
Gets the flags used for adding applications to the store.
|
a AsStore instance. |
Returns : |
the AsStoreAddFlags, or 0 if unset |
Since 0.2.2
void as_store_set_add_flags (AsStore *store
,AsStoreAddFlags add_flags
);
Sets the flags used when adding applications to the store.
NOTE: Using AS_STORE_ADD_FLAG_PREFER_LOCAL
may be a privacy risk depending on
your level of paranoia, and should not be used by default.
|
a AsStore instance. |
|
the AsStoreAddFlags, e.g. AS_STORE_ADD_FLAG_NONE
|
Since 0.2.2
GPtrArray * as_store_validate (AsStore *store
,AsAppValidateFlags flags
,GError **error
);
Validates infomation in the store for data applicable to the defined metadata version.
|
a AsStore instance. |
|
the AsAppValidateFlags to use, e.g. AS_APP_VALIDATE_FLAG_NONE
|
|
A GError or NULL . |
Returns : |
A list of problems, or NULL . [transfer container][element-type AsProblem]
|
Since 0.2.4