OsinfoEntity

OsinfoEntity — Abstract base class for metadata objects

Synopsis

#define             OSINFO_ENTITY_PROP_ID
struct              OsinfoEntity;
struct              OsinfoEntityClass;
void                osinfo_entity_add_param             (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         const gchar *value);
void                osinfo_entity_clear_param           (OsinfoEntity *entity,
                                                         const gchar *key);
const gchar *       osinfo_entity_get_id                (OsinfoEntity *entity);
GList *             osinfo_entity_get_param_keys        (OsinfoEntity *entity);
const gchar *       osinfo_entity_get_param_value       (OsinfoEntity *entity,
                                                         const gchar *key);
gboolean            osinfo_entity_get_param_value_boolean
                                                        (OsinfoEntity *entity,
                                                         const gchar *key);
gboolean            osinfo_entity_get_param_value_boolean_with_default
                                                        (OsinfoEntity *entity,
                                                         const char *key,
                                                         gboolean default_value);
gint                osinfo_entity_get_param_value_enum  (OsinfoEntity *entity,
                                                         const char *key,
                                                         GType enum_type,
                                                         gint default_value);
gint64              osinfo_entity_get_param_value_int64 (OsinfoEntity *entity,
                                                         const gchar *key);
gint64              osinfo_entity_get_param_value_int64_with_default
                                                        (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gint64 default_value);
GList *             osinfo_entity_get_param_value_list  (OsinfoEntity *entity,
                                                         const gchar *key);
void                osinfo_entity_set_param             (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         const gchar *value);
void                osinfo_entity_set_param_boolean     (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gboolean value);
void                osinfo_entity_set_param_enum        (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gint value,
                                                         GType enum_type);
void                osinfo_entity_set_param_int64       (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gint64 value);

Object Hierarchy

  GObject
   +----OsinfoEntity
         +----OsinfoAvatarFormat
         +----OsinfoDatamap
         +----OsinfoDeployment
         +----OsinfoDeviceDriver
         +----OsinfoDevice
         +----OsinfoDeviceLink
         +----OsinfoInstallConfig
         +----OsinfoInstallConfigParam
         +----OsinfoInstallScript
         +----OsinfoMedia
         +----OsinfoProduct
         +----OsinfoOsVariant
         +----OsinfoResources
         +----OsinfoTree

Properties

  "id"                       gchar*                : Read / Write / Construct

Description

OsinfoEntity is an abstract base class for all objects against which metadata needs to be recorded. Every object has a unique identifier, which is recommended to be in URI format. Named, multi-valued data parameters can be associated with each entity. When filtering lists of entities, the parameter values can be used for matching.

Details

OSINFO_ENTITY_PROP_ID

#define OSINFO_ENTITY_PROP_ID "id"

struct OsinfoEntity

struct OsinfoEntity;

struct OsinfoEntityClass

struct OsinfoEntityClass {
};

osinfo_entity_add_param ()

void                osinfo_entity_add_param             (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         const gchar *value);

Adds a new parameter against the entity. A key can have multiple values associated. Thus repeated calls with the same key will build up a list of possible values.

entity :

an OsinfoEntity containing the parameters

key :

the name of the key

value :

the data to associated with that key

osinfo_entity_clear_param ()

void                osinfo_entity_clear_param           (OsinfoEntity *entity,
                                                         const gchar *key);

Remove all values associated with a key

entity :

an OsinfoEntity containing the parameters

key :

the name of the key

osinfo_entity_get_id ()

const gchar *       osinfo_entity_get_id                (OsinfoEntity *entity);

Retrieves the unique key for the entity. The format of identifiers is undefined, but the recommended practice is to use a URI.

entity :

an OsinfoEntity

Returns :

the unique key for the entity. [transfer none]

osinfo_entity_get_param_keys ()

GList *             osinfo_entity_get_param_keys        (OsinfoEntity *entity);

Retrieve all the known parameter keys associated with the entity

entity :

an OsinfoEntity containing the parameters

Returns :

The list of string parameters. [transfer container][element-type utf8]

osinfo_entity_get_param_value ()

const gchar *       osinfo_entity_get_param_value       (OsinfoEntity *entity,
                                                         const gchar *key);

Retrieve the parameter value associated with a named key. If multiple values are stored against the key, only the first value is returned. If no value is associated, NULL is returned

entity :

an OsinfoEntity containing the parameters

key :

the name of the key

Returns :

the value associated with the key, or NULL. [transfer none]

osinfo_entity_get_param_value_boolean ()

gboolean            osinfo_entity_get_param_value_boolean
                                                        (OsinfoEntity *entity,
                                                         const gchar *key);

osinfo_entity_get_param_value_boolean_with_default ()

gboolean            osinfo_entity_get_param_value_boolean_with_default
                                                        (OsinfoEntity *entity,
                                                         const char *key,
                                                         gboolean default_value);

osinfo_entity_get_param_value_enum ()

gint                osinfo_entity_get_param_value_enum  (OsinfoEntity *entity,
                                                         const char *key,
                                                         GType enum_type,
                                                         gint default_value);

osinfo_entity_get_param_value_int64 ()

gint64              osinfo_entity_get_param_value_int64 (OsinfoEntity *entity,
                                                         const gchar *key);

osinfo_entity_get_param_value_int64_with_default ()

gint64              osinfo_entity_get_param_value_int64_with_default
                                                        (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gint64 default_value);

osinfo_entity_get_param_value_list ()

GList *             osinfo_entity_get_param_value_list  (OsinfoEntity *entity,
                                                         const gchar *key);

Retrieve all the parameter values associated with a named key. If no values are associated, NULL is returned

entity :

an OsinfoEntity containing the parameters

key :

the name of the key

Returns :

the values associated with the key. [transfer container][element-type utf8]

osinfo_entity_set_param ()

void                osinfo_entity_set_param             (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         const gchar *value);

Sets a new parameter against the entity. If the key already has a value associated with it, the existing value will be cleared.

entity :

an OsinfoEntity containing the parameters

key :

the name of the key

value :

the data to associated with that key

osinfo_entity_set_param_boolean ()

void                osinfo_entity_set_param_boolean     (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gboolean value);

osinfo_entity_set_param_enum ()

void                osinfo_entity_set_param_enum        (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gint value,
                                                         GType enum_type);

osinfo_entity_set_param_int64 ()

void                osinfo_entity_set_param_int64       (OsinfoEntity *entity,
                                                         const gchar *key,
                                                         gint64 value);

Property Details

The "id" property

  "id"                       gchar*                : Read / Write / Construct

The unique identifier for the entity The format of identifiers is undefined, but the recommended practice is to use a URI. This parameter must be set at time of construction as no default value is provided.

Default value: NULL

See Also

OsinfoList, OsinfoDb