ESource
3
LIBEDATASERVER Library

# ESource

## Synopsis

                ESourcePrivate;
    ESource*    e_source_new                    (const char *name,
                                                 const char *relative_uri);
    ESource*    e_source_new_with_absolute_uri  (const char *name,
                                                 const char *absolute_uri);
    ESource*    e_source_new_from_xml_node      (xmlNodePtr node);
    ESource*    e_source_new_from_standalone_xml
                                                (const char *xml);
    ESource*    e_source_copy                   (ESource *source);
    gboolean    e_source_equal                  (ESource *source_1,
                                                 ESource *source_2);
    gboolean    e_source_update_from_xml_node   (ESource *source,
                                                 xmlNodePtr node,
                                                 gboolean *changed_return);
    char*       e_source_uid_from_xml_node      (xmlNodePtr node);
    void        e_source_set_group              (ESource *source,
                                                 ESourceGroup *group);
    void        e_source_set_name               (ESource *source,
                                                 const char *name);
    void        e_source_set_relative_uri       (ESource *source,
                                                 const char *relative_uri);
    void        e_source_set_absolute_uri       (ESource *source,
                                                 const char *absolute_uri);
    void        e_source_set_readonly           (ESource *source,
                                                 gboolean readonly);
    void        e_source_set_color              (ESource *source,
                                                 guint32 color);
    void        e_source_unset_color            (ESource *source);
    ESourceGroup* e_source_peek_group           (ESource *source);
    const char* e_source_peek_uid               (ESource *source);
    const char* e_source_peek_name              (ESource *source);
    const char* e_source_peek_relative_uri      (ESource *source);
    const char* e_source_peek_absolute_uri      (ESource *source);
    gboolean    e_source_get_readonly           (ESource *source);
    gboolean    e_source_get_color              (ESource *source,
                                                 guint32 *color_return);
    char*       e_source_get_uri                (ESource *source);
    void        e_source_dump_to_xml_node       (ESource *source,
                                                 xmlNodePtr parent_node);
    char*       e_source_to_standalone_xml      (ESource *source);
    const gchar* e_source_get_property          (ESource *source,
                                                 const gchar *property);
    void        e_source_set_property           (ESource *source,
                                                 const gchar *property,
                                                 const gchar *value);
    void        e_source_foreach_property       (ESource *source,
                                                 GHFunc func,
                                                 gpointer data);
    char*       e_source_build_absolute_uri     (ESource *source);

## Description

## Details

### ESourcePrivate

    typedef struct _ESourcePrivate ESourcePrivate;

### e_source_new ()

    ESource*    e_source_new                    (const char *name,
                                                 const char *relative_uri);

`name` :

`relative_uri` :

Returns :

### e_source_new_with_absolute_uri ()

    ESource*    e_source_new_with_absolute_uri  (const char *name,
                                                 const char *absolute_uri);

`name` :

`absolute_uri` :

Returns :

### e_source_new_from_xml_node ()

    ESource*    e_source_new_from_xml_node      (xmlNodePtr node);

`node` :

Returns :

### e_source_new_from_standalone_xml ()

    ESource*    e_source_new_from_standalone_xml
                                                (const char *xml);

`xml` :

Returns :

### e_source_copy ()

    ESource*    e_source_copy                   (ESource *source);

`source` :

Returns :

### e_source_equal ()

    gboolean    e_source_equal                  (ESource *source_1,
                                                 ESource *source_2);

`source_1` :

`source_2` :

Returns :

### e_source_update_from_xml_node ()

    gboolean    e_source_update_from_xml_node   (ESource *source,
                                                 xmlNodePtr node,
                                                 gboolean *changed_return);

Update the ESource properties from `node`.

`source` :

  An ESource.

`node` :

  A pointer to the node to parse.

`changed_return` :

Returns :

  `TRUE` if the data in `node` was recognized and parsed into acceptable values for `source`, `FALSE` otherwise.

### e_source_uid_from_xml_node ()

    char*       e_source_uid_from_xml_node      (xmlNodePtr node);

`node` :

Returns :

### e_source_set_group ()

    void        e_source_set_group              (ESource *source,
                                                 ESourceGroup *group);

`source` :

`group` :

### e_source_set_name ()

    void        e_source_set_name               (ESource *source,
                                                 const char *name);

`source` :

`name` :

### e_source_set_relative_uri ()

    void        e_source_set_relative_uri       (ESource *source,
                                                 const char *relative_uri);

`source` :

`relative_uri` :

### e_source_set_absolute_uri ()

    void        e_source_set_absolute_uri       (ESource *source,
                                                 const char *absolute_uri);

`source` :

`absolute_uri` :

### e_source_set_readonly ()

    void        e_source_set_readonly           (ESource *source,
                                                 gboolean readonly);

`source` :

`readonly` :

### e_source_set_color ()

    void        e_source_set_color              (ESource *source,
                                                 guint32 color);

`source` :

`color` :

### e_source_unset_color ()

    void        e_source_unset_color            (ESource *source);

`source` :

### e_source_peek_group ()

    ESourceGroup* e_source_peek_group           (ESource *source);

`source` :

Returns :

### e_source_peek_uid ()

    const char* e_source_peek_uid               (ESource *source);

`source` :

Returns :

### e_source_peek_name ()

    const char* e_source_peek_name              (ESource *source);

`source` :

Returns :

### e_source_peek_relative_uri ()

    const char* e_source_peek_relative_uri      (ESource *source);

`source` :

Returns :

### e_source_peek_absolute_uri ()

    const char* e_source_peek_absolute_uri      (ESource *source);

`source` :

Returns :

### e_source_get_readonly ()

    gboolean    e_source_get_readonly           (ESource *source);

`source` :

Returns :

### e_source_get_color ()

    gboolean    e_source_get_color              (ESource *source,
                                                 guint32 *color_return);

If `source` has an associated color, return it in *`color_return`.

`source` :

  An ESource

`color_return` :

  Pointer to a variable where the returned color will be stored.

Returns :

  `TRUE` if the `source` has a defined color (and hence *`color_return` was set), `FALSE` otherwise.

### e_source_get_uri ()

    char*       e_source_get_uri                (ESource *source);

`source` :

Returns :

### e_source_dump_to_xml_node ()

    void        e_source_dump_to_xml_node       (ESource *source,
                                                 xmlNodePtr parent_node);

`source` :

`parent_node` :

### e_source_to_standalone_xml ()

    char*       e_source_to_standalone_xml      (ESource *source);

`source` :

Returns :

### e_source_get_property ()

    const gchar* e_source_get_property          (ESource *source,
                                                 const gchar *property);

`source` :

`property` :

Returns :

### e_source_set_property ()

    void        e_source_set_property           (ESource *source,
                                                 const gchar *property,
                                                 const gchar *value);

`source` :

`property` :

`value` :

### e_source_foreach_property ()

    void        e_source_foreach_property       (ESource *source,
                                                 GHFunc func,
                                                 gpointer data);

`source` :

`func` :

`data` :

### e_source_build_absolute_uri ()

    char*       e_source_build_absolute_uri     (ESource *source);

`source` :

Returns :