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