GdaXmlStorage

GdaXmlStorage — Interface which provides saving and loading using XML structures

Functions

Types and Values

Object Hierarchy

    GInterface
    ╰── GdaXmlStorage

Prerequisites

GdaXmlStorage requires GdaObject.

Known Implementations

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

Description

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

Functions

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.

Parameters

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.

Parameters

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.

Parameters

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.

Types and Values

GdaXmlStorage

typedef struct _GdaXmlStorage GdaXmlStorage;