summaryrefslogtreecommitdiff
path: root/lib/gibber/gibber-xmpp-node.h
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2010-10-08 13:42:34 +0100
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2010-10-08 13:42:34 +0100
commit8418b6f5cde587b444c45a308e8a8698e39b383f (patch)
tree41621ce0fd32a5110148148c8d9a908f4b7848a1 /lib/gibber/gibber-xmpp-node.h
parente6efc9a197db675f84df2e84ebb38e283f90ed22 (diff)
downloadtelepathy-salut-8418b6f5cde587b444c45a308e8a8698e39b383f.tar.gz
Replace GibberXmppNode and GibberXmppStanza with WockyNode and WockyStanza
Most of the API is similar enough to add a pile of #defines and not touch application code. Exceptions: - wocky_node_each_attribute passes an extra argument to the callback, so adjust GibberXmppWriter and test-xmpp-connection to cope - WockyStanza->node doesn't exist, so use wocky_xmpp_stanza_get_top_node a lot
Diffstat (limited to 'lib/gibber/gibber-xmpp-node.h')
-rw-r--r--lib/gibber/gibber-xmpp-node.h123
1 files changed, 28 insertions, 95 deletions
diff --git a/lib/gibber/gibber-xmpp-node.h b/lib/gibber/gibber-xmpp-node.h
index 48c979bd..7d2a9f91 100644
--- a/lib/gibber/gibber-xmpp-node.h
+++ b/lib/gibber/gibber-xmpp-node.h
@@ -22,104 +22,37 @@
#define __GIBBER_XMPP_NODE_H__
#include <glib.h>
+#include <wocky/wocky-node.h>
G_BEGIN_DECLS
-typedef struct _GibberXmppNode GibberXmppNode;
-
-struct _GibberXmppNode {
- gchar *name;
- gchar *content;
-
- /* Private */
- gchar *language;
- GQuark ns;
- GSList *attributes;
- GSList *children;
-};
-
-typedef gboolean (*gibber_xmpp_node_each_attr_func )(const gchar *key,
- const gchar *value, const gchar *ns, gpointer user_data);
-
-typedef gboolean (*gibber_xmpp_node_each_child_func) (GibberXmppNode *node,
- gpointer user_data);
-
-void gibber_xmpp_node_each_attribute (GibberXmppNode *node,
- gibber_xmpp_node_each_attr_func func, gpointer user_data);
-
-void gibber_xmpp_node_each_child (GibberXmppNode *node,
- gibber_xmpp_node_each_child_func func, gpointer user_data);
-
-const gchar *gibber_xmpp_node_get_attribute (GibberXmppNode *node,
- const gchar *key);
-
-const gchar *gibber_xmpp_node_get_attribute_ns (GibberXmppNode *node,
- const gchar *key, const gchar *ns);
-
-void gibber_xmpp_node_set_attribute (GibberXmppNode *node, const gchar *key,
- const gchar *value);
-
-void gibber_xmpp_node_set_attribute_ns (GibberXmppNode *node,
- const gchar *key, const gchar *value, const gchar *ns);
-
-/* Set attribute with the given size for the value */
-void gibber_xmpp_node_set_attribute_n (GibberXmppNode *node, const gchar *key,
- const gchar *value, gsize value_size);
-
-void gibber_xmpp_node_set_attribute_n_ns (GibberXmppNode *node,
- const gchar *key, const gchar *value, gsize value_size,
- const gchar *ns);
-
-/* Getting children */
-GibberXmppNode *gibber_xmpp_node_get_child (GibberXmppNode *node,
- const gchar *name);
-
-GibberXmppNode *gibber_xmpp_node_get_child_ns (GibberXmppNode *node,
- const gchar *name, const gchar *ns);
-
-/* Creating child nodes */
-GibberXmppNode *gibber_xmpp_node_add_child (GibberXmppNode *node,
- const gchar *name);
-
-GibberXmppNode *gibber_xmpp_node_add_child_ns (GibberXmppNode *node,
- const gchar *name, const gchar *ns);
-
-GibberXmppNode *gibber_xmpp_node_add_child_with_content (GibberXmppNode *node,
- const gchar *name, const char *content);
-
-GibberXmppNode *gibber_xmpp_node_add_child_with_content_ns (
- GibberXmppNode *node, const gchar *name, const gchar *content,
- const gchar *ns);
-
-/* Setting/Getting namespaces */
-void gibber_xmpp_node_set_ns (GibberXmppNode *node, const gchar *ns);
-const gchar *gibber_xmpp_node_get_ns (GibberXmppNode *node);
-
-/* Setting/Getting language */
-const gchar *gibber_xmpp_node_get_language (GibberXmppNode *node);
-void gibber_xmpp_node_set_language (GibberXmppNode *node, const gchar *lang);
-void gibber_xmpp_node_set_language_n (GibberXmppNode *node, const gchar *lang,
- gsize lang_size);
-
-
-/* Setting or adding content */
-void gibber_xmpp_node_set_content (GibberXmppNode *node, const gchar *content);
-void gibber_xmpp_node_append_content (GibberXmppNode *node,
- const gchar *content);
-
-void gibber_xmpp_node_append_content_n (GibberXmppNode *node,
- const gchar *content, gsize size);
-
-/* Return a reading friendly representation of a node and its children.
- * Should be use for debugging purpose only. */
-gchar *gibber_xmpp_node_to_string (GibberXmppNode *node);
-
-/* Create a new standalone node, usually only used by the stanza object */
-GibberXmppNode *gibber_xmpp_node_new (const char *name);
-GibberXmppNode *gibber_xmpp_node_new_ns (const char *name, const gchar *ns);
-
-/* Frees the node and all it's children! */
-void gibber_xmpp_node_free (GibberXmppNode *node);
+typedef WockyNode GibberXmppNode;
+
+#define gibber_xmpp_node_each_child wocky_node_each_child
+#define gibber_xmpp_node_get_attribute wocky_node_get_attribute
+#define gibber_xmpp_node_get_attribute_ns wocky_node_get_attribute_ns
+#define gibber_xmpp_node_set_attribute wocky_node_set_attribute
+#define gibber_xmpp_node_set_attribute_ns wocky_node_set_attribute_ns
+#define gibber_xmpp_node_set_attribute_n wocky_node_set_attribute_n
+#define gibber_xmpp_node_set_attribute_n_ns wocky_node_set_attribute_n_ns
+#define gibber_xmpp_node_get_child wocky_node_get_child
+#define gibber_xmpp_node_get_child_ns wocky_node_get_child_ns
+#define gibber_xmpp_node_add_child wocky_node_add_child
+#define gibber_xmpp_node_add_child_ns wocky_node_add_child_ns
+#define gibber_xmpp_node_add_child_with_content wocky_node_add_child_with_content
+#define gibber_xmpp_node_add_child_with_content_ns wocky_node_add_child_with_content_ns
+
+#define gibber_xmpp_node_get_ns wocky_node_get_ns
+#define gibber_xmpp_node_get_language wocky_node_get_language
+#define gibber_xmpp_node_set_language wocky_node_set_language
+#define gibber_xmpp_node_set_language_n wocky_node_set_language_n
+#define gibber_xmpp_node_set_content wocky_node_set_content
+#define gibber_xmpp_node_append_content wocky_node_append_content
+#define gibber_xmpp_node_append_content_n wocky_node_append_content_n
+#define gibber_xmpp_node_to_string wocky_node_to_string
+
+#define gibber_xmpp_node_new_ns wocky_node_new
+#define gibber_xmpp_node_free wocky_node_free
G_END_DECLS