OsinfoProduct

OsinfoProduct — An software product

Synopsis

#define             OSINFO_PRODUCT_PROP_CODENAME
#define             OSINFO_PRODUCT_PROP_EOL_DATE
#define             OSINFO_PRODUCT_PROP_NAME
#define             OSINFO_PRODUCT_PROP_RELEASE_DATE
#define             OSINFO_PRODUCT_PROP_SHORT_ID
#define             OSINFO_PRODUCT_PROP_VENDOR
#define             OSINFO_PRODUCT_PROP_VERSION
struct              OsinfoProduct;
struct              OsinfoProductClass;
enum                OsinfoProductRelationship;
void                osinfo_product_add_related          (OsinfoProduct *product,
                                                         OsinfoProductRelationship relshp,
                                                         OsinfoProduct *otherproduct);
const gchar *       osinfo_product_get_codename         (OsinfoProduct *prod);
GDate *             osinfo_product_get_eol_date         (OsinfoProduct *prod);
const gchar *       osinfo_product_get_eol_date_string  (OsinfoProduct *prod);
const gchar *       osinfo_product_get_name             (OsinfoProduct *prod);
OsinfoProductList * osinfo_product_get_related          (OsinfoProduct *product,
                                                         OsinfoProductRelationship relshp);
GDate *             osinfo_product_get_release_date     (OsinfoProduct *prod);
const gchar *       osinfo_product_get_release_date_string
                                                        (OsinfoProduct *prod);
const gchar *       osinfo_product_get_short_id         (OsinfoProduct *prod);
const gchar *       osinfo_product_get_vendor           (OsinfoProduct *prod);
const gchar *       osinfo_product_get_version          (OsinfoProduct *prod);

Object Hierarchy

  GObject
   +----OsinfoEntity
         +----OsinfoProduct
               +----OsinfoOs
               +----OsinfoPlatform

Properties

  "codename"                 gchar*                : Read
  "name"                     gchar*                : Read
  "short-id"                 gchar*                : Read
  "vendor"                   gchar*                : Read
  "version"                  gchar*                : Read

Description

OsinfoProduct is an entity representing an software product. There are relationships amongst products to declare which are newest releases, which are clones and which are derived from a common ancestry.

Details

OSINFO_PRODUCT_PROP_CODENAME

#define OSINFO_PRODUCT_PROP_CODENAME     "codename"

OSINFO_PRODUCT_PROP_EOL_DATE

#define OSINFO_PRODUCT_PROP_EOL_DATE     "eol-date"

OSINFO_PRODUCT_PROP_NAME

#define OSINFO_PRODUCT_PROP_NAME         "name"

OSINFO_PRODUCT_PROP_RELEASE_DATE

#define OSINFO_PRODUCT_PROP_RELEASE_DATE "release-date"

OSINFO_PRODUCT_PROP_SHORT_ID

#define OSINFO_PRODUCT_PROP_SHORT_ID     "short-id"

OSINFO_PRODUCT_PROP_VENDOR

#define OSINFO_PRODUCT_PROP_VENDOR       "vendor"

OSINFO_PRODUCT_PROP_VERSION

#define OSINFO_PRODUCT_PROP_VERSION      "version"

struct OsinfoProduct

struct OsinfoProduct;

struct OsinfoProductClass

struct OsinfoProductClass {
    OsinfoEntityClass parent_class;

    /* class members */
};

enum OsinfoProductRelationship

typedef enum {
    OSINFO_PRODUCT_RELATIONSHIP_DERIVES_FROM,
    OSINFO_PRODUCT_RELATIONSHIP_UPGRADES,
    OSINFO_PRODUCT_RELATIONSHIP_CLONES,
} OsinfoProductRelationship;

Enum values used to form relationships between products

OSINFO_PRODUCT_RELATIONSHIP_DERIVES_FROM

a descendent (RHEL-5 derives from Fedora-6)

OSINFO_PRODUCT_RELATIONSHIP_UPGRADES

a new version release (RHEL-6 upgrades RHEL-4)

OSINFO_PRODUCT_RELATIONSHIP_CLONES

a perfect clone (CentPRODUCT-5 clones RHEL-5)

osinfo_product_add_related ()

void                osinfo_product_add_related          (OsinfoProduct *product,
                                                         OsinfoProductRelationship relshp,
                                                         OsinfoProduct *otherproduct);

Add an association between two products

product :

a product

relshp :

the relationship

otherproduct :

the product to relate to. [transfer none]

osinfo_product_get_codename ()

const gchar *       osinfo_product_get_codename         (OsinfoProduct *prod);

osinfo_product_get_eol_date ()

GDate *             osinfo_product_get_eol_date         (OsinfoProduct *prod);

osinfo_product_get_eol_date_string ()

const gchar *       osinfo_product_get_eol_date_string  (OsinfoProduct *prod);

osinfo_product_get_name ()

const gchar *       osinfo_product_get_name             (OsinfoProduct *prod);

osinfo_product_get_related ()

OsinfoProductList * osinfo_product_get_related          (OsinfoProduct *product,
                                                         OsinfoProductRelationship relshp);

Get a list of products satisfying the requested relationship

product :

an product

relshp :

the relationship to query

Returns :

a list of related products. [transfer full]

osinfo_product_get_release_date ()

GDate *             osinfo_product_get_release_date     (OsinfoProduct *prod);

osinfo_product_get_release_date_string ()

const gchar *       osinfo_product_get_release_date_string
                                                        (OsinfoProduct *prod);

osinfo_product_get_short_id ()

const gchar *       osinfo_product_get_short_id         (OsinfoProduct *prod);

osinfo_product_get_vendor ()

const gchar *       osinfo_product_get_vendor           (OsinfoProduct *prod);

osinfo_product_get_version ()

const gchar *       osinfo_product_get_version          (OsinfoProduct *prod);

Property Details

The "codename" property

  "codename"                 gchar*                : Read

Codename.

Default value: NULL


The "name" property

  "name"                     gchar*                : Read

Name.

Default value: NULL


The "short-id" property

  "short-id"                 gchar*                : Read

Short ID.

Default value: NULL


The "vendor" property

  "vendor"                   gchar*                : Read

Vendor.

Default value: NULL


The "version" property

  "version"                  gchar*                : Read

Version.

Default value: NULL

See Also

OsinfoProduct, OsinfoPlatform