PkPackageSack

PkPackageSack — A sack of packages that can be manipulated

Functions

Types and Values

Object Hierarchy

    GEnum
    ╰── PkPackageSackSortType
    GObject
    ╰── PkPackageSack

Description

A package sack is a set of packages that can have operations done on them in parallel. This might be adding summary text for bare package ID's, or to add package or update details.

Functions

pk_package_sack_new ()

PkPackageSack *
pk_package_sack_new (void);

Returns

a new PkPackageSack object.

Since: 0.5.2


pk_package_sack_test ()

void
pk_package_sack_test (gpointer user_data);

PkPackageSackFilterFunc ()

gboolean
(*PkPackageSackFilterFunc) (PkPackage *package,
                            gpointer user_data);

pk_package_sack_clear ()

void
pk_package_sack_clear (PkPackageSack *sack);

Empty all the packages from the sack

Parameters

sack

a valid PkPackageSack instance

 

Since: 0.5.2


pk_package_sack_get_ids ()

gchar **
pk_package_sack_get_ids (PkPackageSack *sack);

Returns all the Package IDs in the sack

Parameters

sack

a valid PkPackageSack instance

 

Returns

the number of packages in the sack, free with g_strfreev().

[transfer full]

Since: 0.5.3


pk_package_sack_get_size ()

guint
pk_package_sack_get_size (PkPackageSack *sack);

Gets the number of packages in the sack

Parameters

sack

a valid PkPackageSack instance

 

Returns

the number of packages in the sack

Since: 0.5.2


pk_package_sack_get_array ()

GPtrArray *
pk_package_sack_get_array (PkPackageSack *sack);

Gets the package array from the sack

Parameters

sack

a valid PkPackageSack instance

 

Returns

A GPtrArray, free with g_ptr_array_unref().

[element-type PkPackage][transfer container]

Since: 0.6.1


pk_package_sack_sort ()

void
pk_package_sack_sort (PkPackageSack *sack,
                      PkPackageSackSortType type);

pk_package_sack_add_package ()

gboolean
pk_package_sack_add_package (PkPackageSack *sack,
                             PkPackage *package);

Adds a package to the sack.

Parameters

sack

a valid PkPackageSack instance

 

package

a valid PkPackage instance

 

Returns

TRUE if the package was added to the sack

Since: 0.5.2


pk_package_sack_add_package_by_id ()

gboolean
pk_package_sack_add_package_by_id (PkPackageSack *sack,
                                   const gchar *package_id,
                                   GError **error);

Adds a package reference to the sack.

Parameters

sack

a valid PkPackageSack instance

 

package_id

a package_id descriptor

 

error

a GError to put the error code and message in, or NULL

 

Returns

TRUE if the package was added to the sack

Since: 0.5.2


pk_package_sack_add_packages_from_file ()

gboolean
pk_package_sack_add_packages_from_file
                               (PkPackageSack *sack,
                                GFile *file,
                                GError **error);

Adds packages from package-list file to a PkPackageSack.

Parameters

sack

a valid PkPackageSack instance

 

file

a valid package-list file

 

error

a GError to put the error code and message in, or NULL

 

Returns

TRUE if there were no errors.


pk_package_sack_to_file ()

gboolean
pk_package_sack_to_file (PkPackageSack *sack,
                         GFile *file,
                         GError **error);

Write the contents of a PkPackageSack to a package-list file.

Parameters

sack

a valid PkPackageSack instance

 

file

a valid package-list file

 

error

a GError to put the error code and message in, or NULL

 

Returns

TRUE if there were no errors.

Since: 0.8.6


pk_package_sack_remove_package ()

gboolean
pk_package_sack_remove_package (PkPackageSack *sack,
                                PkPackage *package);

Removes a package reference from the sack. The pointers have to match exactly.

Parameters

sack

a valid PkPackageSack instance

 

package

a valid PkPackage instance

 

Returns

TRUE if the package was removed from the sack

Since: 0.5.2


pk_package_sack_remove_package_by_id ()

gboolean
pk_package_sack_remove_package_by_id (PkPackageSack *sack,
                                      const gchar *package_id);

Removes a package reference from the sack. As soon as one package is removed the search is stopped.

Parameters

sack

a valid PkPackageSack instance

 

package_id

a package_id descriptor

 

Returns

TRUE if the package was removed from the sack

Since: 0.5.2


pk_package_sack_remove_by_filter ()

gboolean
pk_package_sack_remove_by_filter (PkPackageSack *sack,
                                  PkPackageSackFilterFunc filter_cb,
                                  gpointer user_data);

Removes from the package sack any packages that return FALSE from the filter function.

Parameters

sack

a valid PkPackageSack instance

 

filter_cb

a PkPackageSackFilterFunc, which returns TRUE for the PkPackage's to retain.

[scope call]

user_data

user data to pass to filter_cb

 

Returns

TRUE if a package was removed from the sack

Since: 0.6.3


pk_package_sack_find_by_id ()

PkPackage *
pk_package_sack_find_by_id (PkPackageSack *sack,
                            const gchar *package_id);

Finds a package in a sack from reference. As soon as one package is found the search is stopped.

Parameters

sack

a valid PkPackageSack instance

 

package_id

a package_id descriptor

 

Returns

the PkPackage object, or NULL if unfound. Free with g_object_unref().

[transfer full]

Since: 0.5.2


pk_package_sack_find_by_id_name_arch ()

PkPackage *
pk_package_sack_find_by_id_name_arch (PkPackageSack *sack,
                                      const gchar *package_id);

Finds a package in a sack by package name and architecture. As soon as one package is found the search is stopped.

Parameters

sack

a valid PkPackageSack instance

 

package_id

a package_id descriptor

 

Returns

the PkPackage object, or NULL if not found.

[transfer full]

Since: 0.8.16


pk_package_sack_filter_by_info ()

PkPackageSack *
pk_package_sack_filter_by_info (PkPackageSack *sack,
                                PkInfoEnum info);

Returns a new package sack which only matches packages that match the specified info enum value.

Parameters

sack

a valid PkPackageSack instance

 

info

a PkInfoEnum value to match

 

Returns

a new PkPackageSack, free with g_object_unref().

[transfer full]

Since: 0.6.2


pk_package_sack_filter ()

PkPackageSack *
pk_package_sack_filter (PkPackageSack *sack,
                        PkPackageSackFilterFunc filter_cb,
                        gpointer user_data);

Returns a new package sack which only matches packages that return TRUE from the filter function.

Parameters

sack

a valid PkPackageSack instance

 

filter_cb

a PkPackageSackFilterFunc, which returns TRUE for the PkPackage's to add.

[scope call]

user_data

user data to pass to filter_cb

 

Returns

a new PkPackageSack, free with g_object_unref().

[transfer full]

Since: 0.6.3


pk_package_sack_get_total_bytes ()

guint64
pk_package_sack_get_total_bytes (PkPackageSack *sack);

Gets the total size of the package sack in bytes.

Parameters

sack

a valid PkPackageSack instance

 

Returns

the size in bytes

Since: 0.5.2


pk_package_sack_merge_generic_finish ()

gboolean
pk_package_sack_merge_generic_finish (PkPackageSack *sack,
                                      GAsyncResult *res,
                                      GError **error);

Gets the result from the asynchronous function.

Parameters

sack

a valid PkPackageSack instance

 

res

the GAsyncResult

 

error

A GError or NULL

 

Returns

TRUE for success

Since: 0.5.2


pk_package_sack_resolve_async ()

void
pk_package_sack_resolve_async (PkPackageSack *sack,
                               GCancellable *cancellable,
                               PkProgressCallback progress_callback,
                               gpointer progress_user_data,
                               GAsyncReadyCallback callback,
                               gpointer user_data);

Merges in details about packages using resolve.

Parameters

sack

a valid PkPackageSack instance

 

cancellable

a GCancellable or NULL

 

progress_callback

the function to run when the progress changes.

[scope notified]

progress_user_data

data to pass to progress_callback

 

callback

the function to run on completion

 

user_data

the data to pass to callback

 

Since: 0.5.2


pk_package_sack_get_details_async ()

void
pk_package_sack_get_details_async (PkPackageSack *sack,
                                   GCancellable *cancellable,
                                   PkProgressCallback progress_callback,
                                   gpointer progress_user_data,
                                   GAsyncReadyCallback callback,
                                   gpointer user_data);

Merges in details about packages.

Parameters

sack

a valid PkPackageSack instance

 

cancellable

a GCancellable or NULL

 

progress_callback

the function to run when the progress changes.

[scope notified]

progress_user_data

data to pass to progress_callback

 

callback

the function to run on completion

 

user_data

the data to pass to callback

 

pk_package_sack_get_update_detail_async ()

void
pk_package_sack_get_update_detail_async
                               (PkPackageSack *sack,
                                GCancellable *cancellable,
                                PkProgressCallback progress_callback,
                                gpointer progress_user_data,
                                GAsyncReadyCallback callback,
                                gpointer user_data);

Merges in update details about packages.

Parameters

sack

a valid PkPackageSack instance

 

cancellable

a GCancellable or NULL

 

progress_callback

the function to run when the progress changes.

[scope notified]

progress_user_data

data to pass to progress_callback

 

callback

the function to run on completion

 

user_data

the data to pass to callback

 

Since: 0.5.2

Types and Values

PK_PACKAGE_SACK_TYPE_ERROR

#define PK_PACKAGE_SACK_TYPE_ERROR (pk_package_sack_error_get_type ())

enum PkPackageSackSortType

Members

PK_PACKAGE_SACK_SORT_TYPE_NAME

   

PK_PACKAGE_SACK_SORT_TYPE_INFO

   

PK_PACKAGE_SACK_SORT_TYPE_PACKAGE_ID

   

PK_PACKAGE_SACK_SORT_TYPE_SUMMARY

   

PK_PACKAGE_SACK_SORT_TYPE_LAST

   

PkPackageSackResults

typedef struct _PkPackageSackResults PkPackageSackResults;