1
2 /* This file is part of MetaDOM
3 * a generic bind package for the Document Object Model API.
4 * Copyright (C) 2001 Luca Padovani <luca.padovani@cs.unibo.it>
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 *
20 * For more information, please visit the author's home page
21 * http://www.cs.unibo.it/~lpadovan
22 * or send an email to <luca.padovani@cs.unibo.it>
23 *
24 * DO NOT EDIT: this file has been generated automatically by MetaDOM
25 */
26
27 #include <gdome.h>
28
29
30 #include "GdomeSmartDOMBasic.hh"
31 #include "GdomeSmartDOMDOMImplementation.hh"
32 #include "GdomeSmartDOMCore.hh"
33 #include "GdomeSmartDOMEvents.hh"
34
35 namespace GdomeSmartDOM {
36
Node(GdomeNode * obj)37 Node::Node(GdomeNode* obj)
38 {
39 gdome_obj = obj;
40 if (gdome_obj != 0) {
41 GdomeException exc_ = 0;
42 gdome_n_ref(gdome_obj, &exc_);
43 if (exc_ != 0) throw DOMException(exc_, "ref to Node failed");
44 }
45 }
46
47
Node(const EventTarget & obj)48 Node::Node(const EventTarget& obj)
49 {
50 gdome_obj = obj.gdome_obj;
51 if (gdome_obj != 0) {
52 GdomeException exc_ = 0;
53 gdome_n_ref(gdome_obj, &exc_);
54 if (exc_ != 0) throw DOMException(exc_, "ref to Node failed");
55 }
56 }
Node(const Node & obj)57 Node::Node(const Node& obj)
58 {
59 gdome_obj = obj.gdome_obj;
60 if (gdome_obj != 0) {
61 GdomeException exc_ = 0;
62 gdome_n_ref(gdome_obj, &exc_);
63 if (exc_ != 0) throw DOMException(exc_, "Node::Node casting from Node");
64 }
65 }
66
operator =(const Node & obj)67 Node& Node::operator=(const Node& obj)
68 {
69 if (gdome_obj == obj.gdome_obj) return *this;
70
71 if (gdome_obj != 0) {
72 GdomeException exc_ = 0;
73 gdome_n_unref(gdome_obj, &exc_);
74 if (exc_ != 0) throw DOMException(exc_, "unref to Node failed");
75 }
76
77 gdome_obj = obj.gdome_obj;
78
79 if (gdome_obj != 0) {
80 GdomeException exc_ = 0;
81 gdome_n_ref(gdome_obj, &exc_);
82 if (exc_ != 0) throw DOMException(exc_, "ref to Node failed");
83 }
84
85 return *this;
86 }
87
~Node()88 Node::~Node()
89 {
90 if (gdome_obj != 0) {
91 GdomeException exc_ = 0;
92 gdome_n_unref(gdome_obj, &exc_);
93 if (exc_ != 0) throw DOMException(exc_, "unref to Node failed");
94 gdome_obj = 0;
95 }
96
97 }
98
99
gdome_object() const100 GdomeNode* Node::gdome_object() const
101 {
102 if (gdome_obj != 0) {
103 GdomeException exc_ = 0;
104 gdome_n_ref(gdome_obj, &exc_);
105 if (exc_ != 0) throw DOMException(exc_, "Node::gdome_object");
106 }
107
108 return gdome_obj;
109 }
110
111 extern "C" void* gdome_xml_n_get_xmlNode(GdomeNode*);
id() const112 void* Node::id() const
113 {
114 if (gdome_obj != 0) return gdome_xml_n_get_xmlNode(gdome_obj);
115 else return 0;
116 }
get_nodeName() const117 GdomeString Node::get_nodeName() const
118 {
119 GdomeException exc_ = 0;
120 GdomeString res_(gdome_n_nodeName((GdomeNode*) gdome_obj, &exc_), true);
121 if (exc_ != 0) throw DOMException(exc_, "Node::get_nodeName");
122 return res_;
123 }
124
get_nodeValue() const125 GdomeString Node::get_nodeValue() const
126 {
127 GdomeException exc_ = 0;
128 GdomeString res_(gdome_n_nodeValue((GdomeNode*) gdome_obj, &exc_), true);
129 if (exc_ != 0) throw DOMException(exc_, "Node::get_nodeValue");
130 return res_;
131 }
132
133 void
set_nodeValue(const GdomeString & v) const134 Node::set_nodeValue(const GdomeString& v) const
135 {
136 GdomeException exc_ = 0;
137 gdome_n_set_nodeValue((GdomeNode*) gdome_obj, static_cast<GdomeDOMString*>(v), &exc_);
138 if (exc_ != 0) throw DOMException(exc_, "Node::set_nodeValue");
139 }
140
get_nodeType() const141 unsigned short Node::get_nodeType() const
142 {
143 GdomeException exc_ = 0;
144 unsigned short res_ = gdome_n_nodeType((GdomeNode*) gdome_obj, &exc_);
145 if (exc_ != 0) throw DOMException(exc_, "Node::get_nodeType");
146 return res_;
147 }
148
get_parentNode() const149 Node Node::get_parentNode() const
150 {
151 GdomeException exc_ = 0;
152 Node res_(gdome_n_parentNode((GdomeNode*) gdome_obj, &exc_), true);
153 if (exc_ != 0) throw DOMException(exc_, "Node::get_parentNode");
154 return res_;
155 }
156
get_childNodes() const157 NodeList Node::get_childNodes() const
158 {
159 GdomeException exc_ = 0;
160 NodeList res_(gdome_n_childNodes((GdomeNode*) gdome_obj, &exc_), true);
161 if (exc_ != 0) throw DOMException(exc_, "Node::get_childNodes");
162 return res_;
163 }
164
get_firstChild() const165 Node Node::get_firstChild() const
166 {
167 GdomeException exc_ = 0;
168 Node res_(gdome_n_firstChild((GdomeNode*) gdome_obj, &exc_), true);
169 if (exc_ != 0) throw DOMException(exc_, "Node::get_firstChild");
170 return res_;
171 }
172
get_lastChild() const173 Node Node::get_lastChild() const
174 {
175 GdomeException exc_ = 0;
176 Node res_(gdome_n_lastChild((GdomeNode*) gdome_obj, &exc_), true);
177 if (exc_ != 0) throw DOMException(exc_, "Node::get_lastChild");
178 return res_;
179 }
180
get_previousSibling() const181 Node Node::get_previousSibling() const
182 {
183 GdomeException exc_ = 0;
184 Node res_(gdome_n_previousSibling((GdomeNode*) gdome_obj, &exc_), true);
185 if (exc_ != 0) throw DOMException(exc_, "Node::get_previousSibling");
186 return res_;
187 }
188
get_nextSibling() const189 Node Node::get_nextSibling() const
190 {
191 GdomeException exc_ = 0;
192 Node res_(gdome_n_nextSibling((GdomeNode*) gdome_obj, &exc_), true);
193 if (exc_ != 0) throw DOMException(exc_, "Node::get_nextSibling");
194 return res_;
195 }
196
get_attributes() const197 NamedNodeMap Node::get_attributes() const
198 {
199 GdomeException exc_ = 0;
200 NamedNodeMap res_(gdome_n_attributes((GdomeNode*) gdome_obj, &exc_), true);
201 if (exc_ != 0) throw DOMException(exc_, "Node::get_attributes");
202 return res_;
203 }
204
get_ownerDocument() const205 Document Node::get_ownerDocument() const
206 {
207 GdomeException exc_ = 0;
208 Document res_(gdome_n_ownerDocument((GdomeNode*) gdome_obj, &exc_), true);
209 if (exc_ != 0) throw DOMException(exc_, "Node::get_ownerDocument");
210 return res_;
211 }
212
get_namespaceURI() const213 GdomeString Node::get_namespaceURI() const
214 {
215 GdomeException exc_ = 0;
216 GdomeString res_(gdome_n_namespaceURI((GdomeNode*) gdome_obj, &exc_), true);
217 if (exc_ != 0) throw DOMException(exc_, "Node::get_namespaceURI");
218 return res_;
219 }
220
get_prefix() const221 GdomeString Node::get_prefix() const
222 {
223 GdomeException exc_ = 0;
224 GdomeString res_(gdome_n_prefix((GdomeNode*) gdome_obj, &exc_), true);
225 if (exc_ != 0) throw DOMException(exc_, "Node::get_prefix");
226 return res_;
227 }
228
229 void
set_prefix(const GdomeString & v) const230 Node::set_prefix(const GdomeString& v) const
231 {
232 GdomeException exc_ = 0;
233 gdome_n_set_prefix((GdomeNode*) gdome_obj, static_cast<GdomeDOMString*>(v), &exc_);
234 if (exc_ != 0) throw DOMException(exc_, "Node::set_prefix");
235 }
236
get_localName() const237 GdomeString Node::get_localName() const
238 {
239 GdomeException exc_ = 0;
240 GdomeString res_(gdome_n_localName((GdomeNode*) gdome_obj, &exc_), true);
241 if (exc_ != 0) throw DOMException(exc_, "Node::get_localName");
242 return res_;
243 }
244
insertBefore(const Node & newChild,const Node & refChild) const245 Node Node::insertBefore(const Node& newChild, const Node& refChild) const
246 {
247 GdomeException exc_ = 0;
248 Node res_(gdome_n_insertBefore((GdomeNode*) gdome_obj, (GdomeNode*) newChild.gdome_obj, (GdomeNode*) refChild.gdome_obj, &exc_), true);
249
250 if (exc_ != 0) throw DOMException(exc_, "Node::insertBefore");
251 return res_;
252 }
253
replaceChild(const Node & newChild,const Node & oldChild) const254 Node Node::replaceChild(const Node& newChild, const Node& oldChild) const
255 {
256 GdomeException exc_ = 0;
257 Node res_(gdome_n_replaceChild((GdomeNode*) gdome_obj, (GdomeNode*) newChild.gdome_obj, (GdomeNode*) oldChild.gdome_obj, &exc_), true);
258
259 if (exc_ != 0) throw DOMException(exc_, "Node::replaceChild");
260 return res_;
261 }
262
removeChild(const Node & oldChild) const263 Node Node::removeChild(const Node& oldChild) const
264 {
265 GdomeException exc_ = 0;
266 Node res_(gdome_n_removeChild((GdomeNode*) gdome_obj, (GdomeNode*) oldChild.gdome_obj, &exc_), true);
267
268 if (exc_ != 0) throw DOMException(exc_, "Node::removeChild");
269 return res_;
270 }
271
appendChild(const Node & newChild) const272 Node Node::appendChild(const Node& newChild) const
273 {
274 GdomeException exc_ = 0;
275 Node res_(gdome_n_appendChild((GdomeNode*) gdome_obj, (GdomeNode*) newChild.gdome_obj, &exc_), true);
276
277 if (exc_ != 0) throw DOMException(exc_, "Node::appendChild");
278 return res_;
279 }
280
hasChildNodes() const281 bool Node::hasChildNodes() const
282 {
283 GdomeException exc_ = 0;
284 bool res_ = gdome_n_hasChildNodes((GdomeNode*) gdome_obj, &exc_);
285
286 if (exc_ != 0) throw DOMException(exc_, "Node::hasChildNodes");
287 return res_;
288 }
289
cloneNode(const bool deep) const290 Node Node::cloneNode(const bool deep) const
291 {
292 GdomeException exc_ = 0;
293 Node res_(gdome_n_cloneNode((GdomeNode*) gdome_obj, deep, &exc_), true);
294
295 if (exc_ != 0) throw DOMException(exc_, "Node::cloneNode");
296 return res_;
297 }
298
normalize() const299 void Node::normalize() const
300 {
301 GdomeException exc_ = 0;
302 gdome_n_normalize((GdomeNode*) gdome_obj, &exc_);
303
304 if (exc_ != 0) throw DOMException(exc_, "Node::normalize");
305
306 }
307
isSupported(const GdomeString & feature,const GdomeString & version) const308 bool Node::isSupported(const GdomeString& feature, const GdomeString& version) const
309 {
310 GdomeException exc_ = 0;
311 bool res_ = gdome_n_isSupported((GdomeNode*) gdome_obj, static_cast<GdomeDOMString*>(feature), static_cast<GdomeDOMString*>(version), &exc_);
312
313 if (exc_ != 0) throw DOMException(exc_, "Node::isSupported");
314 return res_;
315 }
316
hasAttributes() const317 bool Node::hasAttributes() const
318 {
319 GdomeException exc_ = 0;
320 bool res_ = gdome_n_hasAttributes((GdomeNode*) gdome_obj, &exc_);
321
322 if (exc_ != 0) throw DOMException(exc_, "Node::hasAttributes");
323 return res_;
324 }
325
326
327
328 }
329
330