XbBuilderSource

XbBuilderSource

Functions

Types and Values

Description

Functions

XbBuilderSourceNodeFunc ()

gboolean
(*XbBuilderSourceNodeFunc) (XbBuilderSource *self,
                            XbBuilderNode *bn,
                            gpointer user_data,
                            GError **error);

XbBuilderSourceAdapterFunc ()

GInputStream *
(*XbBuilderSourceAdapterFunc) (XbBuilderSource *self,
                               XbBuilderSourceCtx *ctx,
                               gpointer user_data,
                               GCancellable *cancellable,
                               GError **error);

xb_builder_source_new ()

XbBuilderSource *
xb_builder_source_new (void);

Creates a new builder source.

Returns

a new XbBuilderSource

Since: 0.1.1


xb_builder_source_load_file ()

gboolean
xb_builder_source_load_file (XbBuilderSource *self,
                             GFile *file,
                             XbBuilderSourceFlags flags,
                             GCancellable *cancellable,
                             GError **error);

Loads an optionally compressed XML file to build a XbSilo.

Parameters

self

a XbBuilderSource

 

file

a GFile

 

flags

some XbBuilderSourceFlags, e.g. XB_BUILDER_SOURCE_FLAG_LITERAL_TEXT

 

cancellable

a GCancellable, or NULL

 

error

the GError, or NULL

 

Returns

TRUE for success

Since: 0.1.1


xb_builder_source_load_xml ()

gboolean
xb_builder_source_load_xml (XbBuilderSource *self,
                            const gchar *xml,
                            XbBuilderSourceFlags flags,
                            GError **error);

Loads XML data and begins to build a XbSilo.

Parameters

self

a XbBuilderSource

 

xml

XML data

 

flags

some XbBuilderSourceFlags, e.g. XB_BUILDER_SOURCE_FLAG_LITERAL_TEXT

 

error

the GError, or NULL

 

Returns

TRUE for success

Since: 0.1.1


xb_builder_source_load_bytes ()

gboolean
xb_builder_source_load_bytes (XbBuilderSource *self,
                              GBytes *bytes,
                              XbBuilderSourceFlags flags,
                              GError **error);

Loads XML data and begins to build a XbSilo.

Parameters

self

a XbBuilderSource

 

bytes

a GBytes

 

flags

some XbBuilderSourceFlags, e.g. XB_BUILDER_SOURCE_FLAG_LITERAL_TEXT

 

error

the GError, or NULL

 

Returns

TRUE for success

Since: 0.1.2


xb_builder_source_set_info ()

void
xb_builder_source_set_info (XbBuilderSource *self,
                            XbBuilderNode *info);

Sets an optional information metadata node on the root node.

Parameters

self

a XbBuilderSource

 

info

a XbBuilderNode.

[allow-none]

Since: 0.1.0


xb_builder_source_set_prefix ()

void
xb_builder_source_set_prefix (XbBuilderSource *self,
                              const gchar *prefix);

Sets an optional prefix on the root node. This makes any nodes added using this source reside under a common shared parent node.

Parameters

self

a XbBuilderSource

 

prefix

an XPath prefix, e.g. installed.

[allow-none]

Since: 0.1.0


xb_builder_source_add_fixup ()

void
xb_builder_source_add_fixup (XbBuilderSource *self,
                             XbBuilderFixup *fixup);

Adds a function that will get run on every XbBuilderNode compile creates with this source.

Parameters

self

a XbBuilderSource

 

fixup

a XbBuilderFixup

 

Since: 0.1.3


xb_builder_source_add_adapter ()

void
xb_builder_source_add_adapter (XbBuilderSource *self,
                               const gchar *content_types,
                               XbBuilderSourceAdapterFunc func,
                               gpointer user_data,
                               GDestroyNotify user_data_free);

Adds a function that can be used to convert streams loaded with xb_builder_source_load_xml().

This will decompress multiple layers of content, for instance decompressing a gzip stream into a different content type that can then be parsed. Use xb_builder_source_add_simple_adapter() when this recursive behaviour is not desired.

Parameters

self

a XbBuilderSource

 

content_types

mimetypes, e.g. application/x-desktop,application/gzip

 

func

a callback, or NULL

 

user_data

user pointer to pass to func , or NULL

 

user_data_free

a function which gets called to free user_data , or NULL

 

Since: 0.1.7


xb_builder_source_add_simple_adapter ()

void
xb_builder_source_add_simple_adapter (XbBuilderSource *self,
                                      const gchar *content_types,
                                      XbBuilderSourceAdapterFunc func,
                                      gpointer user_data,
                                      GDestroyNotify user_data_free);

Adds a function that can be used to convert streams loaded with xb_builder_source_load_xml().

This function is similar to xb_builder_source_add_adapter() but is limited to one "layer" of content, for instance handling application/xml or a single simple type added using xb_builder_source_add_adapter().

Parameters

self

a XbBuilderSource

 

content_types

mimetypes, e.g. application/x-desktop,application/gzip

 

func

a callback, or NULL

 

user_data

user pointer to pass to func , or NULL

 

user_data_free

a function which gets called to free user_data , or NULL

 

Since: 0.1.15

Types and Values

XB_TYPE_BUILDER_SOURCE

#define             XB_TYPE_BUILDER_SOURCE

struct XbBuilderSourceClass

struct XbBuilderSourceClass {
	GObjectClass parent_class;
};

enum XbBuilderSourceFlags

The flags for converting to XML.

Members

XB_BUILDER_SOURCE_FLAG_NONE

   

XB_BUILDER_SOURCE_FLAG_LITERAL_TEXT

   

XB_BUILDER_SOURCE_FLAG_WATCH_FILE

   

XB_BUILDER_SOURCE_FLAG_WATCH_DIRECTORY

   

XbBuilderSource

typedef struct _XbBuilderSource XbBuilderSource;