## Modulemd.RpmMapEntry Modulemd.RpmMapEntry — Provides an exploded and unexploded view of the NEVRA of an RPM artifact. |

## Stability Level

Stable, unless otherwise indicated

## Functions

ModulemdRpmMapEntry * | modulemd_rpm_map_entry_new ()
ModulemdRpmMapEntry * | modulemd_rpm_map_entry_copy ()
gboolean | modulemd_rpm_map_entry_equals ()
gboolean | modulemd_rpm_map_entry_validate ()
void | modulemd_rpm_map_entry_set_name ()
const gchar * | modulemd_rpm_map_entry_get_name ()
void | modulemd_rpm_map_entry_set_epoch ()
guint64 | modulemd_rpm_map_entry_get_epoch ()
void | modulemd_rpm_map_entry_set_version ()
const gchar * | modulemd_rpm_map_entry_get_version ()
void | modulemd_rpm_map_entry_set_release ()
const gchar * | modulemd_rpm_map_entry_get_release ()
void | modulemd_rpm_map_entry_set_arch ()
const gchar * | modulemd_rpm_map_entry_get_arch ()
gchar * | modulemd_rpm_map_entry_get_nevra_as_string ()

## Properties

char * | arch | Read / Write / Construct
guint64 | epoch | Read / Write / Construct
char * | name | Read / Write / Construct
char * | nevra | Read
char * | release | Read / Write / Construct
char * | version | Read / Write / Construct

## Types and Values

#define | MODULEMD_TYPE_RPM_MAP_ENTRY
| ModulemdRpmMapEntry

## Object Hierarchy

        GObject
        ╰── ModulemdRpmMapEntry

## Description

## Functions

### modulemd_rpm_map_entry_new ()

    ModulemdRpmMapEntry *
    modulemd_rpm_map_entry_new (const gchar *name,
                                guint64 epoch,
                                const gchar *version,
                                const gchar *release,
                                const gchar *arch);

Create a new rpm-map entry. This will contain the decomposed NEVRA of an RPM artifact.

#### Parameters

name | The name of the package. |
epoch | The epoch of the package. |
version | The version of the package. |
release | The release string of the package. |
arch | The processor architecture of the package. |

#### Returns

A newly-allocated ModulemdRpmMapEntry object with the provided values.

[transfer full]

### modulemd_rpm_map_entry_copy ()

    ModulemdRpmMapEntry *
    modulemd_rpm_map_entry_copy (ModulemdRpmMapEntry *self);

#### Parameters

self | This ModulemdRpmMapEntry object. |

#### Returns

A deep copy of this ModulemdRpmMapEntry object.

[transfer full]

Since: 2.2

### modulemd_rpm_map_entry_equals ()

    gboolean
    modulemd_rpm_map_entry_equals (ModulemdRpmMapEntry *self,
                                   ModulemdRpmMapEntry *other);

#### Parameters

self | A ModulemdRpmMapEntry object. |
other | Another ModulemdRpmMapEntry object. |

#### Returns

TRUE if the two entries contain equivalent data. FALSE if they differ.

Since: 2.2

### modulemd_rpm_map_entry_validate ()

    gboolean
    modulemd_rpm_map_entry_validate (ModulemdRpmMapEntry *self,
                                     GError **error);

#### Parameters

self | This ModulemdRpmMapEntry object. |
error | A GError containing the reason the object failed validation. NULL if the validation passed. | [out]

Since: 2.2

### modulemd_rpm_map_entry_set_name ()

    void
    modulemd_rpm_map_entry_set_name (ModulemdRpmMapEntry *self,
                                     const gchar *name);

#### Parameters

self | This ModulemdRpmMapEntry object. |
name | The package name of this RPM. |

Since: 2.2

### modulemd_rpm_map_entry_get_name ()

    const gchar *
    modulemd_rpm_map_entry_get_name (ModulemdRpmMapEntry *self);

#### Parameters

self | This ModulemdRpmMapEntry object. |

#### Returns

The package name of this RPM.

[transfer none]

Since: 2.2

### modulemd_rpm_map_entry_set_epoch ()

    void
    modulemd_rpm_map_entry_set_epoch (ModulemdRpmMapEntry *self,
                                      guint64 epoch);

#### Parameters

self | This ModulemdRpmMapEntry object. |
epoch | The package epoch of this RPM. |

Since: 2.2

### modulemd_rpm_map_entry_get_epoch ()

    guint64
    modulemd_rpm_map_entry_get_epoch (ModulemdRpmMapEntry *self);

#### Parameters

self | This ModulemdRpmMapEntry object. |

#### Returns

The package epoch of this RPM.

Since: 2.2

### modulemd_rpm_map_entry_set_version ()

    void
    modulemd_rpm_map_entry_set_version (ModulemdRpmMapEntry *self,
                                        const gchar *version);

#### Parameters

self | This ModulemdRpmMapEntry object. |
version | The package version of this RPM. |

Since: 2.2

### modulemd_rpm_map_entry_get_version ()

    const gchar *
    modulemd_rpm_map_entry_get_version (ModulemdRpmMapEntry *self);

#### Parameters

self | This ModulemdRpmMapEntry object. |

#### Returns

The package version of this RPM.

[transfer none]

Since: 2.2

### modulemd_rpm_map_entry_set_release ()

    void
    modulemd_rpm_map_entry_set_release (ModulemdRpmMapEntry *self,
                                        const gchar *release);

#### Parameters

self | This ModulemdRpmMapEntry object. |
release | The package release string of this RPM. |

Since: 2.2

### modulemd_rpm_map_entry_get_release ()

    const gchar *
    modulemd_rpm_map_entry_get_release (ModulemdRpmMapEntry *self);

#### Parameters

self | This ModulemdRpmMapEntry object. |

#### Returns

The package release of this RPM.

[transfer none]

Since: 2.2

### modulemd_rpm_map_entry_set_arch ()

    void
    modulemd_rpm_map_entry_set_arch (ModulemdRpmMapEntry *self,
                                     const gchar *arch);

#### Parameters

self | This ModulemdRpmMapEntry object. |
arch | The package architecture of this RPM. |

Since: 2.2

### modulemd_rpm_map_entry_get_arch ()

    const gchar *
    modulemd_rpm_map_entry_get_arch (ModulemdRpmMapEntry *self);

#### Parameters

self | This ModulemdRpmMapEntry object. |

#### Returns

The package architecture of this RPM.

[transfer none]

Since: 2.2

### modulemd_rpm_map_entry_get_nevra_as_string ()

    gchar *
    modulemd_rpm_map_entry_get_nevra_as_string
                                   (ModulemdRpmMapEntry *self);

[rename-to modulemd_rpm_map_entry_get_nevra]

#### Parameters

self | This ModulemdRpmMapEntry object. |

#### Returns

A newly-allocated string containing the complete N-E:V-R.A constructed from the component parts. NULL if any field is missing.

[transfer full]

Since: 2.2

## Types and Values

### MODULEMD_TYPE_RPM_MAP_ENTRY

    #define MODULEMD_TYPE_RPM_MAP_ENTRY (modulemd_rpm_map_entry_get_type ())

### ModulemdRpmMapEntry

    typedef struct _ModulemdRpmMapEntry ModulemdRpmMapEntry;

## Property Details

### The `“arch”` property

      “arch”                     char *

The artifact package architecture.

Owner: ModulemdRpmMapEntry

Flags: Read / Write / Construct

Default value: NULL

### The `“epoch”` property

      “epoch”                    guint64

The artifact package epoch.

Owner: ModulemdRpmMapEntry

Flags: Read / Write / Construct

Allowed values: <= 4294967295

Default value: 0

### The `“name”` property

      “name”                     char *

The artifact package name.

Owner: ModulemdRpmMapEntry

Flags: Read / Write / Construct

Default value: NULL

### The `“nevra”` property

      “nevra”                    char *

The artifact package N-E:V-R.A.

Owner: ModulemdRpmMapEntry

Flags: Read

Default value: NULL

### The `“release”` property

      “release”                  char *

The artifact package release string.

Owner: ModulemdRpmMapEntry

Flags: Read / Write / Construct

Default value: NULL

### The `“version”` property

      “version”                  char *

The artifact package version.

Owner: ModulemdRpmMapEntry

Flags: Read / Write / Construct

Default value: NULL