OsinfoProduct

OsinfoProduct — An software product

Synopsis

struct              OsinfoProduct;
struct              OsinfoProductClass;
                    OsinfoProductPrivate;
enum                OsinfoProductRelationship;
OsinfoProductList * osinfo_product_get_related          (OsinfoProduct *product,
                                                         OsinfoProductRelationship relshp);
void                osinfo_product_add_related          (OsinfoProduct *product,
                                                         OsinfoProductRelationship relshp,
                                                         OsinfoProduct *otherproduct);

Object Hierarchy

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

Properties

  "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

struct OsinfoProduct

struct OsinfoProduct;

struct OsinfoProductClass

struct OsinfoProductClass {
    OsinfoEntityClass parent_class;

    /* class members */
};

OsinfoProductPrivate

typedef struct _OsinfoProductPrivate OsinfoProductPrivate;

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_get_related ()

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

Get a list of products satisfying the the requested relationship

product :

an product

relshp :

the relationship to query

Returns :

a list of related products. [transfer full]

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]

Property Details

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