Modulemd.ModuleStreamV2

Modulemd.ModuleStreamV2 — The data to represent a stream of a module as described by a modulemd YAML document of version 2.

Stability Level

Stable, unless otherwise indicated

Functions

ModulemdModuleStreamV2 * modulemd_module_stream_v2_new ()
void modulemd_module_stream_v2_set_arch ()
const gchar * modulemd_module_stream_v2_get_arch ()
void modulemd_module_stream_v2_set_buildopts ()
ModulemdBuildopts * modulemd_module_stream_v2_get_buildopts ()
void modulemd_module_stream_v2_set_community ()
const gchar * modulemd_module_stream_v2_get_community ()
void modulemd_module_stream_v2_set_description ()
const gchar * modulemd_module_stream_v2_get_description ()
void modulemd_module_stream_v2_set_documentation ()
const gchar * modulemd_module_stream_v2_get_documentation ()
void modulemd_module_stream_v2_set_summary ()
const gchar * modulemd_module_stream_v2_get_summary ()
void modulemd_module_stream_v2_set_tracker ()
const gchar * modulemd_module_stream_v2_get_tracker ()
void modulemd_module_stream_v2_add_component ()
void modulemd_module_stream_v2_remove_module_component ()
void modulemd_module_stream_v2_remove_rpm_component ()
GStrv modulemd_module_stream_v2_get_module_component_names_as_strv ()
GStrv modulemd_module_stream_v2_get_rpm_component_names_as_strv ()
ModulemdComponentModule * modulemd_module_stream_v2_get_module_component ()
ModulemdComponentRpm * modulemd_module_stream_v2_get_rpm_component ()
void modulemd_module_stream_v2_add_content_license ()
void modulemd_module_stream_v2_add_module_license ()
void modulemd_module_stream_v2_remove_content_license ()
void modulemd_module_stream_v2_remove_module_license ()
GStrv modulemd_module_stream_v2_get_content_licenses_as_strv ()
GStrv modulemd_module_stream_v2_get_module_licenses_as_strv ()
void modulemd_module_stream_v2_add_profile ()
void modulemd_module_stream_v2_clear_profiles ()
GStrv modulemd_module_stream_v2_get_profile_names_as_strv ()
ModulemdProfile * modulemd_module_stream_v2_get_profile ()
void modulemd_module_stream_v2_add_rpm_api ()
void modulemd_module_stream_v2_remove_rpm_api ()
GStrv modulemd_module_stream_v2_get_rpm_api_as_strv ()
void modulemd_module_stream_v2_add_rpm_artifact ()
void modulemd_module_stream_v2_remove_rpm_artifact ()
GStrv modulemd_module_stream_v2_get_rpm_artifacts_as_strv ()
void modulemd_module_stream_v2_set_rpm_artifact_map_entry ()
ModulemdRpmMapEntry * modulemd_module_stream_v2_get_rpm_artifact_map_entry ()
void modulemd_module_stream_v2_add_rpm_filter ()
void modulemd_module_stream_v2_remove_rpm_filter ()
GStrv modulemd_module_stream_v2_get_rpm_filters_as_strv ()
void modulemd_module_stream_v2_add_servicelevel ()
void modulemd_module_stream_v2_clear_servicelevels ()
GStrv modulemd_module_stream_v2_get_servicelevel_names_as_strv ()
ModulemdServiceLevel * modulemd_module_stream_v2_get_servicelevel ()
void modulemd_module_stream_v2_add_dependencies ()
GPtrArray * modulemd_module_stream_v2_get_dependencies ()
void modulemd_module_stream_v2_set_xmd ()
GVariant * modulemd_module_stream_v2_get_xmd ()

Types and Values

Description

Functions

modulemd_module_stream_v2_new ()

ModulemdModuleStreamV2 *
modulemd_module_stream_v2_new (const gchar *module_name,
                               const gchar *module_stream);

Parameters

module_name

The name of this module.

[in][nullable]

module_stream

The name of this module stream.

[in][nullable]

Returns

A newly-allocated ModulemdModuleStreamV2 object, with the specified module and stream names, if provided.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_set_arch ()

void
modulemd_module_stream_v2_set_arch (ModulemdModuleStreamV2 *self,
                                    const gchar *arch);

Set the module artifact architecture.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

arch

The module artifact architecture.

[in]

Since: 2.0


modulemd_module_stream_v2_get_arch ()

const gchar *
modulemd_module_stream_v2_get_arch (ModulemdModuleStreamV2 *self);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

The module artifact architecture.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_set_buildopts ()

void
modulemd_module_stream_v2_set_buildopts
                               (ModulemdModuleStreamV2 *self,
                                ModulemdBuildopts *buildopts);

Set build options for this module's components.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

buildopts

A ModulemdBuildOpts object describing build options that apply globally to components in this module.

[in][transfer none]

Since: 2.0


modulemd_module_stream_v2_get_buildopts ()

ModulemdBuildopts *
modulemd_module_stream_v2_get_buildopts
                               (ModulemdModuleStreamV2 *self);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

The build options for this module's components.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_set_community ()

void
modulemd_module_stream_v2_set_community
                               (ModulemdModuleStreamV2 *self,
                                const gchar *community);

Set the module community website address.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

community

The upstream community website for this module.

[in]

Since: 2.0


modulemd_module_stream_v2_get_community ()

const gchar *
modulemd_module_stream_v2_get_community
                               (ModulemdModuleStreamV2 *self);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

The module community website address.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_set_description ()

void
modulemd_module_stream_v2_set_description
                               (ModulemdModuleStreamV2 *self,
                                const gchar *description);

Set the module description.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

description

The untranslated description of this module.

[in][nullable]

Since: 2.0


modulemd_module_stream_v2_get_description ()

const gchar *
modulemd_module_stream_v2_get_description
                               (ModulemdModuleStreamV2 *self,
                                const gchar *locale);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

locale

The name of the locale to use when translating the string. If NULL, it will determine the locale with a system call to setlocale(LC_MESSAGES, NULL) and return the that. If the caller wants the untranslated string, they should pass "C" for the locale.

[in][nullable]

Returns

The module description, translated to the requested locale if available.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_set_documentation ()

void
modulemd_module_stream_v2_set_documentation
                               (ModulemdModuleStreamV2 *self,
                                const gchar *documentation);

Set the module documentation website address.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

documentation

The upstream documentation website for this module.

[in]

Since: 2.0


modulemd_module_stream_v2_get_documentation ()

const gchar *
modulemd_module_stream_v2_get_documentation
                               (ModulemdModuleStreamV2 *self);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

The module documentation website address.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_set_summary ()

void
modulemd_module_stream_v2_set_summary (ModulemdModuleStreamV2 *self,
                                       const gchar *summary);

Set the module summary.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

summary

The untranslated summary of this module.

[in][nullable]

Since: 2.0


modulemd_module_stream_v2_get_summary ()

const gchar *
modulemd_module_stream_v2_get_summary (ModulemdModuleStreamV2 *self,
                                       const gchar *locale);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

locale

The name of the locale to use when translating the string. If NULL, it will determine the locale with a system call to setlocale(LC_MESSAGES, NULL) and return the that. If the caller wants the untranslated string, they should pass "C" for the locale.

[in][nullable]

Returns

The module summary, translated to the requested locale if available.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_set_tracker ()

void
modulemd_module_stream_v2_set_tracker (ModulemdModuleStreamV2 *self,
                                       const gchar *tracker);

Set the module bug tracker website address.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

tracker

The upstream bug tracker website for this module.

[in]

Since: 2.0


modulemd_module_stream_v2_get_tracker ()

const gchar *
modulemd_module_stream_v2_get_tracker (ModulemdModuleStreamV2 *self);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

The module bug tracker website address.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_add_component ()

void
modulemd_module_stream_v2_add_component
                               (ModulemdModuleStreamV2 *self,
                                ModulemdComponent *component);

Add a component definition to the module.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

component

A ModulemdComponent to be added to this module stream.

[in][transfer none]

Since: 2.0


modulemd_module_stream_v2_remove_module_component ()

void
modulemd_module_stream_v2_remove_module_component
                               (ModulemdModuleStreamV2 *self,
                                const gchar *component_name);

Remove a component from this module stream.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

component_name

The name of the component to remove from the module stream.

[in]

Since: 2.0


modulemd_module_stream_v2_remove_rpm_component ()

void
modulemd_module_stream_v2_remove_rpm_component
                               (ModulemdModuleStreamV2 *self,
                                const gchar *component_name);

Remove a component from this module stream.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

component_name

The name of the component to remove from the module stream.

[in]

Since: 2.0


modulemd_module_stream_v2_get_module_component_names_as_strv ()

GStrv
modulemd_module_stream_v2_get_module_component_names_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_module_component_names]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of module component names included in this stream.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_get_rpm_component_names_as_strv ()

GStrv
modulemd_module_stream_v2_get_rpm_component_names_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_rpm_component_names]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of RPM component names included in this stream.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_get_module_component ()

ModulemdComponentModule *
modulemd_module_stream_v2_get_module_component
                               (ModulemdModuleStreamV2 *self,
                                const gchar *component_name);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

component_name

The name of the component to retrieve.

[in]

Returns

The module component matching component name if it exists, else NULL.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_get_rpm_component ()

ModulemdComponentRpm *
modulemd_module_stream_v2_get_rpm_component
                               (ModulemdModuleStreamV2 *self,
                                const gchar *component_name);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

component_name

The name of the component to retrieve.

[in]

Returns

The RPM component matching component name if it exists, else NULL.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_add_content_license ()

void
modulemd_module_stream_v2_add_content_license
                               (ModulemdModuleStreamV2 *self,
                                const gchar *license);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

license

A license under which one or more of the components of this module stream are distributed.

[in]

Since: 2.0


modulemd_module_stream_v2_add_module_license ()

void
modulemd_module_stream_v2_add_module_license
                               (ModulemdModuleStreamV2 *self,
                                const gchar *license);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

license

A license under which this module stream is distributed.

[in]

Since: 2.0


modulemd_module_stream_v2_remove_content_license ()

void
modulemd_module_stream_v2_remove_content_license
                               (ModulemdModuleStreamV2 *self,
                                const gchar *license);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

license

A license to remove from the list. Has no effect if the license is not present.

[in]

Since: 2.0


modulemd_module_stream_v2_remove_module_license ()

void
modulemd_module_stream_v2_remove_module_license
                               (ModulemdModuleStreamV2 *self,
                                const gchar *license);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

license

A license to remove from the list. Has no effect if the license is not present.

[in]

Since: 2.0


modulemd_module_stream_v2_get_content_licenses_as_strv ()

GStrv
modulemd_module_stream_v2_get_content_licenses_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_content_licenses]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of licenses under which one or more components of this module stream are released.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_get_module_licenses_as_strv ()

GStrv
modulemd_module_stream_v2_get_module_licenses_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_module_licenses]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of licenses under which this module stream is released.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_add_profile ()

void
modulemd_module_stream_v2_add_profile (ModulemdModuleStreamV2 *self,
                                       ModulemdProfile *profile);

Adds a profile definition to this module stream.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

profile

A ModulemdProfile for this module stream.

[in][transfer none]

Since: 2.0


modulemd_module_stream_v2_clear_profiles ()

void
modulemd_module_stream_v2_clear_profiles
                               (ModulemdModuleStreamV2 *self);

Removes all profiles from this module stream.

Parameters

self

This ModulemdModuleStreamV1 object.

[in]

Since: 2.0


modulemd_module_stream_v2_get_profile_names_as_strv ()

GStrv
modulemd_module_stream_v2_get_profile_names_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_profile_names]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of profile names associated with this module stream.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_get_profile ()

ModulemdProfile *
modulemd_module_stream_v2_get_profile (ModulemdModuleStreamV2 *self,
                                       const gchar *profile_name);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

profile_name

The name of a profile to retrieve.

[in]

Returns

The requested profile definition if present in the module stream. NULL otherwise.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_add_rpm_api ()

void
modulemd_module_stream_v2_add_rpm_api (ModulemdModuleStreamV2 *self,
                                       const gchar *rpm);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

rpm

The name of a binary RPM present in this module that is considered stable public API.

[in]

Since: 2.0


modulemd_module_stream_v2_remove_rpm_api ()

void
modulemd_module_stream_v2_remove_rpm_api
                               (ModulemdModuleStreamV2 *self,
                                const gchar *rpm);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

rpm

A binary RPM name to remove from the list of stable public API.

[in]

Since: 2.0


modulemd_module_stream_v2_get_rpm_api_as_strv ()

GStrv
modulemd_module_stream_v2_get_rpm_api_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_rpm_api]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of binary RPM names that forms the public API of this module stream.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_add_rpm_artifact ()

void
modulemd_module_stream_v2_add_rpm_artifact
                               (ModulemdModuleStreamV2 *self,
                                const gchar *nevr);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

nevr

The NEVR of a binary RPM present in this module stream.

[in]

Since: 2.0


modulemd_module_stream_v2_remove_rpm_artifact ()

void
modulemd_module_stream_v2_remove_rpm_artifact
                               (ModulemdModuleStreamV2 *self,
                                const gchar *nevr);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

nevr

An RPM NEVR to remove from the list of artifacts.

[in]

Since: 2.0


modulemd_module_stream_v2_get_rpm_artifacts_as_strv ()

GStrv
modulemd_module_stream_v2_get_rpm_artifacts_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_rpm_artifacts]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of RPM NEVRs are included in this module stream.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_set_rpm_artifact_map_entry ()

void
modulemd_module_stream_v2_set_rpm_artifact_map_entry
                               (ModulemdModuleStreamV2 *self,
                                ModulemdRpmMapEntry *entry,
                                const gchar *digest,
                                const gchar *checksum);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

entry

The RPM map entry to save to the stream.

[in]

digest

A string representing the digest algorithm used to generate the checksum .

[in]

checksum

An RPM artifact checksum.

[in]

Since: 2.2


modulemd_module_stream_v2_get_rpm_artifact_map_entry ()

ModulemdRpmMapEntry *
modulemd_module_stream_v2_get_rpm_artifact_map_entry
                               (ModulemdModuleStreamV2 *self,
                                const gchar *digest,
                                const gchar *checksum);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

digest

A string representing the digest algorithm used to generate the checksum .

[in]

checksum

An RPM artifact checksum.

[in]

Returns

The ModulemdRpmMapEntry object associated with the provided checksum generated by the provided digest .

[transfer none]

Since: 2.2


modulemd_module_stream_v2_add_rpm_filter ()

void
modulemd_module_stream_v2_add_rpm_filter
                               (ModulemdModuleStreamV2 *self,
                                const gchar *rpm);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

rpm

The name of a binary RPM to filter out of this module stream.

[in]

Since: 2.0


modulemd_module_stream_v2_remove_rpm_filter ()

void
modulemd_module_stream_v2_remove_rpm_filter
                               (ModulemdModuleStreamV2 *self,
                                const gchar *rpm);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

rpm

A binary RPM name to remove from the filter list.

[in]

Since: 2.0


modulemd_module_stream_v2_get_rpm_filters_as_strv ()

GStrv
modulemd_module_stream_v2_get_rpm_filters_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_rpm_filters]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of binary RPM names that are filtered out of this module stream.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_add_servicelevel ()

void
modulemd_module_stream_v2_add_servicelevel
                               (ModulemdModuleStreamV2 *self,
                                ModulemdServiceLevel *servicelevel);

Adds a servicelevel definition to this module stream.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

servicelevel

A ModulemdServiceLevel for this module stream.

[in][transfer none]

Since: 2.0


modulemd_module_stream_v2_clear_servicelevels ()

void
modulemd_module_stream_v2_clear_servicelevels
                               (ModulemdModuleStreamV2 *self);

Removes all servicelevels from this module stream.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Since: 2.0


modulemd_module_stream_v2_get_servicelevel_names_as_strv ()

GStrv
modulemd_module_stream_v2_get_servicelevel_names_as_strv
                               (ModulemdModuleStreamV2 *self);

[rename-to modulemd_module_stream_v2_get_servicelevel_names]

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

An ordered list of servicelevel names associated with this module stream.

[transfer full]

Since: 2.0


modulemd_module_stream_v2_get_servicelevel ()

ModulemdServiceLevel *
modulemd_module_stream_v2_get_servicelevel
                               (ModulemdModuleStreamV2 *self,
                                const gchar *servicelevel_name);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

servicelevel_name

The name of a servicelevel to retrieve.

[in]

Returns

The requested servicelevel definition if present in the module stream. NULL otherwise.

[transfer none]

Since: 2.0


modulemd_module_stream_v2_add_dependencies ()

void
modulemd_module_stream_v2_add_dependencies
                               (ModulemdModuleStreamV2 *self,
                                ModulemdDependencies *deps);

Add a ModulemdDependencies object to the list of dependencies for this module stream.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

deps

A ModulemdDependencies object to add to the list for this module stream.

[in]

Since: 2.0


modulemd_module_stream_v2_get_dependencies ()

GPtrArray *
modulemd_module_stream_v2_get_dependencies
                               (ModulemdModuleStreamV2 *self);

Return the list of ModulemdDependencies objects as a GPtrArray

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

A list of all ModulemdDependencies objects associated with this module stream.

[transfer none][element-type ModulemdDependencies]


modulemd_module_stream_v2_set_xmd ()

void
modulemd_module_stream_v2_set_xmd (ModulemdModuleStreamV2 *self,
                                   GVariant *xmd);

Sets the eXtensible MetaData (XMD) for this module. XMD is arbitrary YAML data that will be set and returned as-is (with the exception that the ordering of mapping keys is not defined). Useful for carrying private data.

This function assumes ownership of the XMD GVariant and thus should not be freed by the caller.

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

xmd

A GVariant representing arbitrary YAML.

[in][transfer full]

Since: 2.0


modulemd_module_stream_v2_get_xmd ()

GVariant *
modulemd_module_stream_v2_get_xmd (ModulemdModuleStreamV2 *self);

Parameters

self

This ModulemdModuleStreamV2 object.

[in]

Returns

The extensible metadata block as a GVariant.

[transfer none]

Types and Values

MODULEMD_TYPE_MODULE_STREAM_V2

#define MODULEMD_TYPE_MODULE_STREAM_V2 (modulemd_module_stream_v2_get_type ())

ModulemdModuleStreamV2

typedef struct {
  GObject parent_instance;

  /* Properties */
  ModulemdBuildopts *buildopts;
  gchar *community;
  gchar *description;
  gchar *documentation;
  gchar *summary;
  gchar *tracker;

  /* Internal Data Structures */
  GHashTable *module_components; /* <string, Modulemd.ComponentModule */
  GHashTable *rpm_components; /* <string, Modulemd.ComponentRpm> */

  GHashTable *content_licenses; /* string set */
  GHashTable *module_licenses; /* string set */

  GHashTable *profiles; /* <string, Modulemd.Profile> */

  GHashTable *rpm_api; /* string set */

  GHashTable *rpm_artifacts; /* string set */

  /*  < string, GHashTable <string, Modulemd.RpmMapEntry> > */
  GHashTable *rpm_artifact_map;

  GHashTable *rpm_filters; /* string set */

  GHashTable *servicelevels; /* <string, Modulemd.ServiceLevel */

  GPtrArray *dependencies; /* <Modulemd.Dependencies> */

  GVariant *xmd;
} ModulemdModuleStreamV2;