libpurple/protocols/gg/xml.c

branch
soc.2013.gobjectification
changeset 34935
686fa55b0deb
parent 33348
2394cd23ce8f
child 35357
389e413e3414
equal deleted inserted replaced
34934:d50c4b767a5e 34935:686fa55b0deb
29 29
30 #include "xml.h" 30 #include "xml.h"
31 31
32 #include "debug.h" 32 #include "debug.h"
33 33
34 gboolean ggp_xml_get_string(const xmlnode *xml, gchar *childName, gchar **var) 34 gboolean ggp_xml_get_string(const PurpleXmlNode *xml, gchar *childName, gchar **var)
35 { 35 {
36 char *str; 36 char *str;
37 37
38 g_return_val_if_fail(xml != NULL, FALSE); 38 g_return_val_if_fail(xml != NULL, FALSE);
39 g_return_val_if_fail(var != NULL, FALSE); 39 g_return_val_if_fail(var != NULL, FALSE);
40 40
41 if (childName != NULL) 41 if (childName != NULL)
42 { 42 {
43 xml = xmlnode_get_child(xml, childName); 43 xml = purple_xmlnode_get_child(xml, childName);
44 if (xml == NULL) 44 if (xml == NULL)
45 return FALSE; 45 return FALSE;
46 } 46 }
47 47
48 str = xmlnode_get_data(xml); 48 str = purple_xmlnode_get_data(xml);
49 if (str == NULL) 49 if (str == NULL)
50 return FALSE; 50 return FALSE;
51 51
52 *var = str; 52 *var = str;
53 return TRUE; 53 return TRUE;
54 } 54 }
55 55
56 gboolean ggp_xml_get_bool(const xmlnode *xml, gchar *childName, gboolean *var) 56 gboolean ggp_xml_get_bool(const PurpleXmlNode *xml, gchar *childName, gboolean *var)
57 { 57 {
58 char *str; 58 char *str;
59 gboolean succ; 59 gboolean succ;
60 60
61 succ = ggp_xml_get_string(xml, childName, &str); 61 succ = ggp_xml_get_string(xml, childName, &str);
69 g_free(str); 69 g_free(str);
70 70
71 return TRUE; 71 return TRUE;
72 } 72 }
73 73
74 gboolean ggp_xml_get_uint(const xmlnode *xml, gchar *childName, unsigned int *var) 74 gboolean ggp_xml_get_uint(const PurpleXmlNode *xml, gchar *childName, unsigned int *var)
75 { 75 {
76 char *str, *endptr; 76 char *str, *endptr;
77 gboolean succ; 77 gboolean succ;
78 unsigned int val; 78 unsigned int val;
79 79
90 if (succ) 90 if (succ)
91 *var = val; 91 *var = val;
92 return succ; 92 return succ;
93 } 93 }
94 94
95 gboolean ggp_xml_set_string(xmlnode *xml, gchar *childName, const gchar *val) 95 gboolean ggp_xml_set_string(PurpleXmlNode *xml, gchar *childName, const gchar *val)
96 { 96 {
97 g_return_val_if_fail(xml != NULL, FALSE); 97 g_return_val_if_fail(xml != NULL, FALSE);
98 g_return_val_if_fail(val != NULL, FALSE); 98 g_return_val_if_fail(val != NULL, FALSE);
99 99
100 if (childName != NULL) 100 if (childName != NULL)
101 { 101 {
102 xmlnode *child = xmlnode_get_child(xml, childName); 102 PurpleXmlNode *child = purple_xmlnode_get_child(xml, childName);
103 if (child == NULL) 103 if (child == NULL)
104 child = xmlnode_new_child(xml, childName); 104 child = purple_xmlnode_new_child(xml, childName);
105 xml = child; 105 xml = child;
106 } 106 }
107 107
108 ggp_xmlnode_remove_children(xml); 108 ggp_xmlnode_remove_children(xml);
109 xmlnode_insert_data(xml, val, -1); 109 purple_xmlnode_insert_data(xml, val, -1);
110 110
111 return TRUE; 111 return TRUE;
112 } 112 }
113 113
114 gboolean ggp_xml_set_bool(xmlnode *xml, gchar *childName, gboolean val) 114 gboolean ggp_xml_set_bool(PurpleXmlNode *xml, gchar *childName, gboolean val)
115 { 115 {
116 return ggp_xml_set_string(xml, childName, val ? "true" : "false"); 116 return ggp_xml_set_string(xml, childName, val ? "true" : "false");
117 } 117 }
118 118
119 gboolean ggp_xml_set_uint(xmlnode *xml, gchar *childName, unsigned int val) 119 gboolean ggp_xml_set_uint(PurpleXmlNode *xml, gchar *childName, unsigned int val)
120 { 120 {
121 gchar buff[20]; 121 gchar buff[20];
122 g_snprintf(buff, sizeof(buff), "%u", val); 122 g_snprintf(buff, sizeof(buff), "%u", val);
123 return ggp_xml_set_string(xml, childName, buff); 123 return ggp_xml_set_string(xml, childName, buff);
124 } 124 }
125 125
126 void ggp_xmlnode_remove_children(xmlnode *xml) 126 void ggp_xmlnode_remove_children(PurpleXmlNode *xml)
127 { 127 {
128 xmlnode *child = xml->child; 128 PurpleXmlNode *child = xml->child;
129 while (child) 129 while (child)
130 { 130 {
131 xmlnode *next = child->next; 131 PurpleXmlNode *next = child->next;
132 if (child->type != XMLNODE_TYPE_ATTRIB) 132 if (child->type != PURPLE_XMLNODE_TYPE_ATTRIB)
133 xmlnode_free(child); 133 purple_xmlnode_free(child);
134 child = next; 134 child = next;
135 } 135 }
136 } 136 }
137 137
138 unsigned int ggp_xml_child_count(xmlnode *xml, const gchar *childName) 138 unsigned int ggp_xml_child_count(PurpleXmlNode *xml, const gchar *childName)
139 { 139 {
140 xmlnode *child; 140 PurpleXmlNode *child;
141 unsigned int count = 0; 141 unsigned int count = 0;
142 142
143 g_return_val_if_fail(xml != NULL, 0); 143 g_return_val_if_fail(xml != NULL, 0);
144 144
145 if (childName) 145 if (childName)
146 { 146 {
147 child = xmlnode_get_child(xml, childName); 147 child = purple_xmlnode_get_child(xml, childName);
148 while (child) 148 while (child)
149 { 149 {
150 child = xmlnode_get_next_twin(child); 150 child = purple_xmlnode_get_next_twin(child);
151 count++; 151 count++;
152 } 152 }
153 } 153 }
154 else 154 else
155 { 155 {

mercurial