GdaXmlStorage

GdaXmlStorage — Interface which provides saving and loading using XML structures

Synopsis

                    GdaXmlStorage;
gchar*              gda_xml_storage_get_xml_id          (GdaXmlStorage *iface);
xmlNodePtr          gda_xml_storage_save_to_xml         (GdaXmlStorage *iface,
                                                         GError **error);
gboolean            gda_xml_storage_load_from_xml       (GdaXmlStorage *iface,
                                                         xmlNodePtr node,
                                                         GError **error);

Object Hierarchy

  GInterface
   +----GdaXmlStorage

Prerequisites

GdaXmlStorage requires GdaObject.

Known Implementations

GdaXmlStorage is implemented by GdaGraphItem, GdaQueryFieldFunc, GdaQueryJoin, GdaDictDatabase, GdaQueryFieldAgg, GdaGraphQuery, GdaDictConstraint, GdaDictAggregate, GdaGraph, GdaDictFunction, GdaQueryFieldValue, GdaQueryCondition, GdaQueryFieldAll, GdaQueryTarget, GdaDictType, GdaDictTable, GdaDictField, GdaQuery and GdaQueryFieldField.

Description

Any object which implements this interface can be streamed and restored to and from an XML file.

Details

GdaXmlStorage

typedef struct _GdaXmlStorage GdaXmlStorage;


gda_xml_storage_get_xml_id ()

gchar*              gda_xml_storage_get_xml_id          (GdaXmlStorage *iface);

Fetch the xml id string of the object, it's up to the caller to free the string.

iface :

an object which implements the GdaXmlStorage interface

Returns :

the xml id.

gda_xml_storage_save_to_xml ()

xmlNodePtr          gda_xml_storage_save_to_xml         (GdaXmlStorage *iface,
                                                         GError **error);

Creates a new xmlNodePtr structure and fills it with data representing the object given as argument.

iface :

an object which implements the GdaXmlStorage interface

error :

location to store error, or NULL

Returns :

the new XML node, or NULL if an error occurred.

gda_xml_storage_load_from_xml ()

gboolean            gda_xml_storage_load_from_xml       (GdaXmlStorage *iface,
                                                         xmlNodePtr node,
                                                         GError **error);

Updates the object with data stored in the XML node. The object MUST already exist and be of the correct type before calling this function. This is a virtual function.

iface :

an object which implements the GdaXmlStorage interface

node :

an XML node from an XML structure

error :

location to store error, or NULL

Returns :

TRUE if no error occurred.