initial import
[vuplus_webkit] / Source / WebCore / bindings / scripts / test / GObject / WebKitDOMTestObj.cpp
1 /*
2     This file is part of the WebKit open source project.
3     This file has been generated by generate-bindings.pl. DO NOT MODIFY!
4
5     This library is free software; you can redistribute it and/or
6     modify it under the terms of the GNU Library General Public
7     License as published by the Free Software Foundation; either
8     version 2 of the License, or (at your option) any later version.
9
10     This library is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13     Library General Public License for more details.
14
15     You should have received a copy of the GNU Library General Public License
16     along with this library; see the file COPYING.LIB.  If not, write to
17     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18     Boston, MA 02110-1301, USA.
19 */
20
21 #include <glib-object.h>
22 #include "config.h"
23
24 #include <wtf/GetPtr.h>
25 #include <wtf/RefPtr.h>
26 #include "DOMObjectCache.h"
27 #include "ExceptionCode.h"
28 #include "HTMLNames.h"
29 #include "JSMainThreadExecState.h"
30 #include "TestObj.h"
31 #include "WebKitDOMBinding.h"
32 #include "gobject/ConvertToUTF8String.h"
33 #include "webkit/WebKitDOMIDBKey.h"
34 #include "webkit/WebKitDOMIDBKeyPrivate.h"
35 #include "webkit/WebKitDOMOptionsObject.h"
36 #include "webkit/WebKitDOMOptionsObjectPrivate.h"
37 #include "webkit/WebKitDOMSerializedScriptValue.h"
38 #include "webkit/WebKitDOMSerializedScriptValuePrivate.h"
39 #include "webkit/WebKitDOMTestObj.h"
40 #include "webkit/WebKitDOMTestObjPrivate.h"
41 #include "webkitdefines.h"
42 #include "webkitglobalsprivate.h"
43 #include "webkitmarshal.h"
44
45 namespace WebKit {
46     
47 WebKitDOMTestObj* kit(WebCore::TestObj* obj)
48 {
49     g_return_val_if_fail(obj, 0);
50
51     if (gpointer ret = DOMObjectCache::get(obj))
52         return static_cast<WebKitDOMTestObj*>(ret);
53
54     return static_cast<WebKitDOMTestObj*>(DOMObjectCache::put(obj, WebKit::wrapTestObj(obj)));
55 }
56     
57 } // namespace WebKit //
58
59 void
60 webkit_dom_test_obj_void_method(WebKitDOMTestObj* self)
61 {
62     g_return_if_fail(self);
63     WebCore::JSMainThreadNullState state;
64     WebCore::TestObj * item = WebKit::core(self);
65     item->voidMethod();
66 }
67
68 void
69 webkit_dom_test_obj_void_method_with_args(WebKitDOMTestObj* self, glong int_arg, const gchar* str_arg, WebKitDOMTestObj* obj_arg)
70 {
71     g_return_if_fail(self);
72     WebCore::JSMainThreadNullState state;
73     WebCore::TestObj * item = WebKit::core(self);
74     g_return_if_fail(str_arg);
75     g_return_if_fail(obj_arg);
76     WTF::String converted_str_arg = WTF::String::fromUTF8(str_arg);
77     WebCore::TestObj * converted_obj_arg = NULL;
78     if (obj_arg != NULL) {
79         converted_obj_arg = WebKit::core(obj_arg);
80         g_return_if_fail(converted_obj_arg);
81     }
82     item->voidMethodWithArgs(int_arg, converted_str_arg, converted_obj_arg);
83 }
84
85 glong
86 webkit_dom_test_obj_int_method(WebKitDOMTestObj* self)
87 {
88     g_return_val_if_fail(self, 0);
89     WebCore::JSMainThreadNullState state;
90     WebCore::TestObj * item = WebKit::core(self);
91     glong res = item->intMethod();
92     return res;
93 }
94
95 glong
96 webkit_dom_test_obj_int_method_with_args(WebKitDOMTestObj* self, glong int_arg, const gchar* str_arg, WebKitDOMTestObj* obj_arg)
97 {
98     g_return_val_if_fail(self, 0);
99     WebCore::JSMainThreadNullState state;
100     WebCore::TestObj * item = WebKit::core(self);
101     g_return_val_if_fail(str_arg, 0);
102     g_return_val_if_fail(obj_arg, 0);
103     WTF::String converted_str_arg = WTF::String::fromUTF8(str_arg);
104     WebCore::TestObj * converted_obj_arg = NULL;
105     if (obj_arg != NULL) {
106         converted_obj_arg = WebKit::core(obj_arg);
107         g_return_val_if_fail(converted_obj_arg, 0);
108     }
109     glong res = item->intMethodWithArgs(int_arg, converted_str_arg, converted_obj_arg);
110     return res;
111 }
112
113 WebKitDOMTestObj*
114 webkit_dom_test_obj_obj_method(WebKitDOMTestObj* self)
115 {
116     g_return_val_if_fail(self, 0);
117     WebCore::JSMainThreadNullState state;
118     WebCore::TestObj * item = WebKit::core(self);
119     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->objMethod());
120     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
121     return res;
122 }
123
124 WebKitDOMTestObj*
125 webkit_dom_test_obj_obj_method_with_args(WebKitDOMTestObj* self, glong int_arg, const gchar* str_arg, WebKitDOMTestObj* obj_arg)
126 {
127     g_return_val_if_fail(self, 0);
128     WebCore::JSMainThreadNullState state;
129     WebCore::TestObj * item = WebKit::core(self);
130     g_return_val_if_fail(str_arg, 0);
131     g_return_val_if_fail(obj_arg, 0);
132     WTF::String converted_str_arg = WTF::String::fromUTF8(str_arg);
133     WebCore::TestObj * converted_obj_arg = NULL;
134     if (obj_arg != NULL) {
135         converted_obj_arg = WebKit::core(obj_arg);
136         g_return_val_if_fail(converted_obj_arg, 0);
137     }
138     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->objMethodWithArgs(int_arg, converted_str_arg, converted_obj_arg));
139     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
140     return res;
141 }
142
143 WebKitDOMTestObj*
144 webkit_dom_test_obj_method_that_requires_all_args(WebKitDOMTestObj* self, const gchar* str_arg, WebKitDOMTestObj* obj_arg)
145 {
146     g_return_val_if_fail(self, 0);
147     WebCore::JSMainThreadNullState state;
148     WebCore::TestObj * item = WebKit::core(self);
149     g_return_val_if_fail(str_arg, 0);
150     g_return_val_if_fail(obj_arg, 0);
151     WTF::String converted_str_arg = WTF::String::fromUTF8(str_arg);
152     WebCore::TestObj * converted_obj_arg = NULL;
153     if (obj_arg != NULL) {
154         converted_obj_arg = WebKit::core(obj_arg);
155         g_return_val_if_fail(converted_obj_arg, 0);
156     }
157     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->methodThatRequiresAllArgs(converted_str_arg, converted_obj_arg));
158     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
159     return res;
160 }
161
162 WebKitDOMTestObj*
163 webkit_dom_test_obj_method_that_requires_all_args_and_throws(WebKitDOMTestObj* self, const gchar* str_arg, WebKitDOMTestObj* obj_arg, GError **error)
164 {
165     g_return_val_if_fail(self, 0);
166     WebCore::JSMainThreadNullState state;
167     WebCore::TestObj * item = WebKit::core(self);
168     g_return_val_if_fail(str_arg, 0);
169     g_return_val_if_fail(obj_arg, 0);
170     WTF::String converted_str_arg = WTF::String::fromUTF8(str_arg);
171     WebCore::TestObj * converted_obj_arg = NULL;
172     if (obj_arg != NULL) {
173         converted_obj_arg = WebKit::core(obj_arg);
174         g_return_val_if_fail(converted_obj_arg, 0);
175     }
176     WebCore::ExceptionCode ec = 0;
177     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->methodThatRequiresAllArgsAndThrows(converted_str_arg, converted_obj_arg, ec));
178     if (ec) {
179         WebCore::ExceptionCodeDescription ecdesc;
180         WebCore::getExceptionCodeDescription(ec, ecdesc);
181         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
182     }
183     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
184     return res;
185 }
186
187 void
188 webkit_dom_test_obj_serialized_value(WebKitDOMTestObj* self, WebKitDOMSerializedScriptValue* serialized_arg)
189 {
190     g_return_if_fail(self);
191     WebCore::JSMainThreadNullState state;
192     WebCore::TestObj * item = WebKit::core(self);
193     g_return_if_fail(serialized_arg);
194     WebCore::SerializedScriptValue * converted_serialized_arg = NULL;
195     if (serialized_arg != NULL) {
196         converted_serialized_arg = WebKit::core(serialized_arg);
197         g_return_if_fail(converted_serialized_arg);
198     }
199     item->serializedValue(converted_serialized_arg);
200 }
201
202 void
203 webkit_dom_test_obj_idb_key(WebKitDOMTestObj* self, WebKitDOMIDBKey* key)
204 {
205     g_return_if_fail(self);
206     WebCore::JSMainThreadNullState state;
207     WebCore::TestObj * item = WebKit::core(self);
208     g_return_if_fail(key);
209     WebCore::IDBKey * converted_key = NULL;
210     if (key != NULL) {
211         converted_key = WebKit::core(key);
212         g_return_if_fail(converted_key);
213     }
214     item->idbKey(converted_key);
215 }
216
217 void
218 webkit_dom_test_obj_options_object(WebKitDOMTestObj* self, WebKitDOMOptionsObject* oo, WebKitDOMOptionsObject* ooo)
219 {
220     g_return_if_fail(self);
221     WebCore::JSMainThreadNullState state;
222     WebCore::TestObj * item = WebKit::core(self);
223     g_return_if_fail(oo);
224     g_return_if_fail(ooo);
225     WebCore::OptionsObject * converted_oo = NULL;
226     if (oo != NULL) {
227         converted_oo = WebKit::core(oo);
228         g_return_if_fail(converted_oo);
229     }
230     WebCore::OptionsObject * converted_ooo = NULL;
231     if (ooo != NULL) {
232         converted_ooo = WebKit::core(ooo);
233         g_return_if_fail(converted_ooo);
234     }
235     item->optionsObject(converted_oo, converted_ooo);
236 }
237
238 void
239 webkit_dom_test_obj_method_with_exception(WebKitDOMTestObj* self, GError **error)
240 {
241     g_return_if_fail(self);
242     WebCore::JSMainThreadNullState state;
243     WebCore::TestObj * item = WebKit::core(self);
244     WebCore::ExceptionCode ec = 0;
245     item->methodWithException(ec);
246     if (ec) {
247         WebCore::ExceptionCodeDescription ecdesc;
248         WebCore::getExceptionCodeDescription(ec, ecdesc);
249         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
250     }
251 }
252
253 void
254 webkit_dom_test_obj_with_dynamic_frame(WebKitDOMTestObj* self)
255 {
256     g_return_if_fail(self);
257     WebCore::JSMainThreadNullState state;
258     WebCore::TestObj * item = WebKit::core(self);
259     item->withDynamicFrame();
260 }
261
262 void
263 webkit_dom_test_obj_with_dynamic_frame_and_arg(WebKitDOMTestObj* self, glong int_arg)
264 {
265     g_return_if_fail(self);
266     WebCore::JSMainThreadNullState state;
267     WebCore::TestObj * item = WebKit::core(self);
268     item->withDynamicFrameAndArg(int_arg);
269 }
270
271 void
272 webkit_dom_test_obj_with_dynamic_frame_and_optional_arg(WebKitDOMTestObj* self, glong int_arg, glong optional_arg)
273 {
274     g_return_if_fail(self);
275     WebCore::JSMainThreadNullState state;
276     WebCore::TestObj * item = WebKit::core(self);
277     item->withDynamicFrameAndOptionalArg(int_arg, optional_arg);
278 }
279
280 void
281 webkit_dom_test_obj_with_dynamic_frame_and_user_gesture(WebKitDOMTestObj* self, glong int_arg, gboolean isUserGesture)
282 {
283     g_return_if_fail(self);
284     WebCore::JSMainThreadNullState state;
285     WebCore::TestObj * item = WebKit::core(self);
286     item->withDynamicFrameAndUserGesture(int_arg, false);
287 }
288
289 void
290 webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad(WebKitDOMTestObj* self, glong int_arg, glong optional_arg, gboolean isUserGesture)
291 {
292     g_return_if_fail(self);
293     WebCore::JSMainThreadNullState state;
294     WebCore::TestObj * item = WebKit::core(self);
295     item->withDynamicFrameAndUserGestureASAD(int_arg, optional_arg, false);
296 }
297
298 void
299 webkit_dom_test_obj_with_script_state_void(WebKitDOMTestObj* self)
300 {
301     g_return_if_fail(self);
302     WebCore::JSMainThreadNullState state;
303     WebCore::TestObj * item = WebKit::core(self);
304     item->withScriptStateVoid();
305 }
306
307 WebKitDOMTestObj*
308 webkit_dom_test_obj_with_script_state_obj(WebKitDOMTestObj* self)
309 {
310     g_return_val_if_fail(self, 0);
311     WebCore::JSMainThreadNullState state;
312     WebCore::TestObj * item = WebKit::core(self);
313     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->withScriptStateObj());
314     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
315     return res;
316 }
317
318 void
319 webkit_dom_test_obj_with_script_state_void_exception(WebKitDOMTestObj* self, GError **error)
320 {
321     g_return_if_fail(self);
322     WebCore::JSMainThreadNullState state;
323     WebCore::TestObj * item = WebKit::core(self);
324     WebCore::ExceptionCode ec = 0;
325     item->withScriptStateVoidException(ec);
326     if (ec) {
327         WebCore::ExceptionCodeDescription ecdesc;
328         WebCore::getExceptionCodeDescription(ec, ecdesc);
329         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
330     }
331 }
332
333 WebKitDOMTestObj*
334 webkit_dom_test_obj_with_script_state_obj_exception(WebKitDOMTestObj* self, GError **error)
335 {
336     g_return_val_if_fail(self, 0);
337     WebCore::JSMainThreadNullState state;
338     WebCore::TestObj * item = WebKit::core(self);
339     WebCore::ExceptionCode ec = 0;
340     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->withScriptStateObjException(ec));
341     if (ec) {
342         WebCore::ExceptionCodeDescription ecdesc;
343         WebCore::getExceptionCodeDescription(ec, ecdesc);
344         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
345     }
346     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
347     return res;
348 }
349
350 void
351 webkit_dom_test_obj_with_script_execution_context(WebKitDOMTestObj* self)
352 {
353     g_return_if_fail(self);
354     WebCore::JSMainThreadNullState state;
355     WebCore::TestObj * item = WebKit::core(self);
356     item->withScriptExecutionContext();
357 }
358
359 void
360 webkit_dom_test_obj_method_with_optional_arg(WebKitDOMTestObj* self, glong opt)
361 {
362     g_return_if_fail(self);
363     WebCore::JSMainThreadNullState state;
364     WebCore::TestObj * item = WebKit::core(self);
365     item->methodWithOptionalArg(opt);
366 }
367
368 void
369 webkit_dom_test_obj_method_with_non_optional_arg_and_optional_arg(WebKitDOMTestObj* self, glong non_opt, glong opt)
370 {
371     g_return_if_fail(self);
372     WebCore::JSMainThreadNullState state;
373     WebCore::TestObj * item = WebKit::core(self);
374     item->methodWithNonOptionalArgAndOptionalArg(non_opt, opt);
375 }
376
377 void
378 webkit_dom_test_obj_method_with_non_optional_arg_and_two_optional_args(WebKitDOMTestObj* self, glong non_opt, glong opt1, glong opt2)
379 {
380     g_return_if_fail(self);
381     WebCore::JSMainThreadNullState state;
382     WebCore::TestObj * item = WebKit::core(self);
383     item->methodWithNonOptionalArgAndTwoOptionalArgs(non_opt, opt1, opt2);
384 }
385
386 gchar*
387 webkit_dom_test_obj_conditional_method1(WebKitDOMTestObj* self)
388 {
389 #if ENABLE(Condition1)
390     g_return_val_if_fail(self, 0);
391     WebCore::JSMainThreadNullState state;
392     WebCore::TestObj * item = WebKit::core(self);
393     gchar* res = convertToUTF8String(item->conditionalMethod1());
394     return res;
395 #else
396     return NULL;
397 #endif /* ENABLE(Condition1) */
398 }
399
400 void
401 webkit_dom_test_obj_conditional_method2(WebKitDOMTestObj* self)
402 {
403 #if ENABLE(Condition1) && ENABLE(Condition2)
404     g_return_if_fail(self);
405     WebCore::JSMainThreadNullState state;
406     WebCore::TestObj * item = WebKit::core(self);
407     item->conditionalMethod2();
408 #endif /* ENABLE(Condition1) && ENABLE(Condition2) */
409 }
410
411 void
412 webkit_dom_test_obj_conditional_method3(WebKitDOMTestObj* self)
413 {
414 #if ENABLE(Condition1) || ENABLE(Condition2)
415     g_return_if_fail(self);
416     WebCore::JSMainThreadNullState state;
417     WebCore::TestObj * item = WebKit::core(self);
418     item->conditionalMethod3();
419 #endif /* ENABLE(Condition1) || ENABLE(Condition2) */
420 }
421
422 void
423 webkit_dom_test_obj_class_method(WebKitDOMTestObj* self)
424 {
425     g_return_if_fail(self);
426     WebCore::JSMainThreadNullState state;
427     WebCore::TestObj * item = WebKit::core(self);
428     item->classMethod();
429 }
430
431 glong
432 webkit_dom_test_obj_class_method_with_optional(WebKitDOMTestObj* self, glong arg)
433 {
434     g_return_val_if_fail(self, 0);
435     WebCore::JSMainThreadNullState state;
436     WebCore::TestObj * item = WebKit::core(self);
437     glong res = item->classMethodWithOptional(arg);
438     return res;
439 }
440
441 glong
442 webkit_dom_test_obj_get_read_only_int_attr(WebKitDOMTestObj* self)
443 {
444     g_return_val_if_fail(self, 0);
445     WebCore::JSMainThreadNullState state;
446     WebCore::TestObj * item = WebKit::core(self);
447     glong res = item->readOnlyIntAttr();
448     return res;
449 }
450
451 gchar*
452 webkit_dom_test_obj_get_read_only_string_attr(WebKitDOMTestObj* self)
453 {
454     g_return_val_if_fail(self, 0);
455     WebCore::JSMainThreadNullState state;
456     WebCore::TestObj * item = WebKit::core(self);
457     gchar* res = convertToUTF8String(item->readOnlyStringAttr());
458     return res;
459 }
460
461 WebKitDOMTestObj*
462 webkit_dom_test_obj_get_read_only_test_obj_attr(WebKitDOMTestObj* self)
463 {
464     g_return_val_if_fail(self, 0);
465     WebCore::JSMainThreadNullState state;
466     WebCore::TestObj * item = WebKit::core(self);
467     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->readOnlyTestObjAttr());
468     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
469     return res;
470 }
471
472 gshort
473 webkit_dom_test_obj_get_short_attr(WebKitDOMTestObj* self)
474 {
475     g_return_val_if_fail(self, 0);
476     WebCore::JSMainThreadNullState state;
477     WebCore::TestObj * item = WebKit::core(self);
478     gshort res = item->shortAttr();
479     return res;
480 }
481
482 void
483 webkit_dom_test_obj_set_short_attr(WebKitDOMTestObj* self, gshort value)
484 {
485     g_return_if_fail(self);
486     WebCore::JSMainThreadNullState state;
487     WebCore::TestObj * item = WebKit::core(self);
488     item->setShortAttr(value);
489 }
490
491 gushort
492 webkit_dom_test_obj_get_unsigned_short_attr(WebKitDOMTestObj* self)
493 {
494     g_return_val_if_fail(self, 0);
495     WebCore::JSMainThreadNullState state;
496     WebCore::TestObj * item = WebKit::core(self);
497     gushort res = item->unsignedShortAttr();
498     return res;
499 }
500
501 void
502 webkit_dom_test_obj_set_unsigned_short_attr(WebKitDOMTestObj* self, gushort value)
503 {
504     g_return_if_fail(self);
505     WebCore::JSMainThreadNullState state;
506     WebCore::TestObj * item = WebKit::core(self);
507     item->setUnsignedShortAttr(value);
508 }
509
510 glong
511 webkit_dom_test_obj_get_int_attr(WebKitDOMTestObj* self)
512 {
513     g_return_val_if_fail(self, 0);
514     WebCore::JSMainThreadNullState state;
515     WebCore::TestObj * item = WebKit::core(self);
516     glong res = item->intAttr();
517     return res;
518 }
519
520 void
521 webkit_dom_test_obj_set_int_attr(WebKitDOMTestObj* self, glong value)
522 {
523     g_return_if_fail(self);
524     WebCore::JSMainThreadNullState state;
525     WebCore::TestObj * item = WebKit::core(self);
526     item->setIntAttr(value);
527 }
528
529 gint64
530 webkit_dom_test_obj_get_long_long_attr(WebKitDOMTestObj* self)
531 {
532     g_return_val_if_fail(self, 0);
533     WebCore::JSMainThreadNullState state;
534     WebCore::TestObj * item = WebKit::core(self);
535     gint64 res = item->longLongAttr();
536     return res;
537 }
538
539 void
540 webkit_dom_test_obj_set_long_long_attr(WebKitDOMTestObj* self, gint64 value)
541 {
542     g_return_if_fail(self);
543     WebCore::JSMainThreadNullState state;
544     WebCore::TestObj * item = WebKit::core(self);
545     item->setLongLongAttr(value);
546 }
547
548 guint64
549 webkit_dom_test_obj_get_unsigned_long_long_attr(WebKitDOMTestObj* self)
550 {
551     g_return_val_if_fail(self, 0);
552     WebCore::JSMainThreadNullState state;
553     WebCore::TestObj * item = WebKit::core(self);
554     guint64 res = item->unsignedLongLongAttr();
555     return res;
556 }
557
558 void
559 webkit_dom_test_obj_set_unsigned_long_long_attr(WebKitDOMTestObj* self, guint64 value)
560 {
561     g_return_if_fail(self);
562     WebCore::JSMainThreadNullState state;
563     WebCore::TestObj * item = WebKit::core(self);
564     item->setUnsignedLongLongAttr(value);
565 }
566
567 gchar*
568 webkit_dom_test_obj_get_string_attr(WebKitDOMTestObj* self)
569 {
570     g_return_val_if_fail(self, 0);
571     WebCore::JSMainThreadNullState state;
572     WebCore::TestObj * item = WebKit::core(self);
573     gchar* res = convertToUTF8String(item->stringAttr());
574     return res;
575 }
576
577 void
578 webkit_dom_test_obj_set_string_attr(WebKitDOMTestObj* self, const gchar* value)
579 {
580     g_return_if_fail(self);
581     WebCore::JSMainThreadNullState state;
582     WebCore::TestObj * item = WebKit::core(self);
583     g_return_if_fail(value);
584     WTF::String converted_value = WTF::String::fromUTF8(value);
585     item->setStringAttr(converted_value);
586 }
587
588 WebKitDOMTestObj*
589 webkit_dom_test_obj_get_test_obj_attr(WebKitDOMTestObj* self)
590 {
591     g_return_val_if_fail(self, 0);
592     WebCore::JSMainThreadNullState state;
593     WebCore::TestObj * item = WebKit::core(self);
594     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->testObjAttr());
595     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
596     return res;
597 }
598
599 void
600 webkit_dom_test_obj_set_test_obj_attr(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
601 {
602     g_return_if_fail(self);
603     WebCore::JSMainThreadNullState state;
604     WebCore::TestObj * item = WebKit::core(self);
605     g_return_if_fail(value);
606     WebCore::TestObj * converted_value = NULL;
607     if (value != NULL) {
608         converted_value = WebKit::core(value);
609         g_return_if_fail(converted_value);
610     }
611     item->setTestObjAttr(converted_value);
612 }
613
614 WebKitDOMTestObj*
615 webkit_dom_test_obj_get_xml_obj_attr(WebKitDOMTestObj* self)
616 {
617     g_return_val_if_fail(self, 0);
618     WebCore::JSMainThreadNullState state;
619     WebCore::TestObj * item = WebKit::core(self);
620     PassRefPtr<WebCore::TestObj> g_res = WTF::getPtr(item->xmlObjAttr());
621     WebKitDOMTestObj* res = WebKit::kit(g_res.get());
622     return res;
623 }
624
625 void
626 webkit_dom_test_obj_set_xml_obj_attr(WebKitDOMTestObj* self, WebKitDOMTestObj* value)
627 {
628     g_return_if_fail(self);
629     WebCore::JSMainThreadNullState state;
630     WebCore::TestObj * item = WebKit::core(self);
631     g_return_if_fail(value);
632     WebCore::TestObj * converted_value = NULL;
633     if (value != NULL) {
634         converted_value = WebKit::core(value);
635         g_return_if_fail(converted_value);
636     }
637     item->setXMLObjAttr(converted_value);
638 }
639
640 gboolean
641 webkit_dom_test_obj_get_create(WebKitDOMTestObj* self)
642 {
643     g_return_val_if_fail(self, 0);
644     WebCore::JSMainThreadNullState state;
645     WebCore::TestObj * item = WebKit::core(self);
646     gboolean res = item->isCreate();
647     return res;
648 }
649
650 void
651 webkit_dom_test_obj_set_create(WebKitDOMTestObj* self, gboolean value)
652 {
653     g_return_if_fail(self);
654     WebCore::JSMainThreadNullState state;
655     WebCore::TestObj * item = WebKit::core(self);
656     item->setCreate(value);
657 }
658
659 gchar*
660 webkit_dom_test_obj_get_reflected_string_attr(WebKitDOMTestObj* self)
661 {
662     g_return_val_if_fail(self, 0);
663     WebCore::JSMainThreadNullState state;
664     WebCore::TestObj * item = WebKit::core(self);
665     gchar* res = convertToUTF8String(item->getAttribute(WebCore::HTMLNames::reflectedstringattrAttr));
666     return res;
667 }
668
669 void
670 webkit_dom_test_obj_set_reflected_string_attr(WebKitDOMTestObj* self, const gchar* value)
671 {
672     g_return_if_fail(self);
673     WebCore::JSMainThreadNullState state;
674     WebCore::TestObj * item = WebKit::core(self);
675     g_return_if_fail(value);
676     WTF::String converted_value = WTF::String::fromUTF8(value);
677     item->setAttribute(WebCore::HTMLNames::reflectedstringattrAttr, converted_value);
678 }
679
680 glong
681 webkit_dom_test_obj_get_reflected_integral_attr(WebKitDOMTestObj* self)
682 {
683     g_return_val_if_fail(self, 0);
684     WebCore::JSMainThreadNullState state;
685     WebCore::TestObj * item = WebKit::core(self);
686     glong res = item->getIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr);
687     return res;
688 }
689
690 void
691 webkit_dom_test_obj_set_reflected_integral_attr(WebKitDOMTestObj* self, glong value)
692 {
693     g_return_if_fail(self);
694     WebCore::JSMainThreadNullState state;
695     WebCore::TestObj * item = WebKit::core(self);
696     item->setIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr, value);
697 }
698
699 gulong
700 webkit_dom_test_obj_get_reflected_unsigned_integral_attr(WebKitDOMTestObj* self)
701 {
702     g_return_val_if_fail(self, 0);
703     WebCore::JSMainThreadNullState state;
704     WebCore::TestObj * item = WebKit::core(self);
705     gulong res = item->getUnsignedIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr);
706     return res;
707 }
708
709 void
710 webkit_dom_test_obj_set_reflected_unsigned_integral_attr(WebKitDOMTestObj* self, gulong value)
711 {
712     g_return_if_fail(self);
713     WebCore::JSMainThreadNullState state;
714     WebCore::TestObj * item = WebKit::core(self);
715     item->setUnsignedIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr, value);
716 }
717
718 gboolean
719 webkit_dom_test_obj_get_reflected_boolean_attr(WebKitDOMTestObj* self)
720 {
721     g_return_val_if_fail(self, 0);
722     WebCore::JSMainThreadNullState state;
723     WebCore::TestObj * item = WebKit::core(self);
724     gboolean res = item->hasAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr);
725     return res;
726 }
727
728 void
729 webkit_dom_test_obj_set_reflected_boolean_attr(WebKitDOMTestObj* self, gboolean value)
730 {
731     g_return_if_fail(self);
732     WebCore::JSMainThreadNullState state;
733     WebCore::TestObj * item = WebKit::core(self);
734     item->setBooleanAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr, value);
735 }
736
737 gchar*
738 webkit_dom_test_obj_get_reflected_url_attr(WebKitDOMTestObj* self)
739 {
740     g_return_val_if_fail(self, 0);
741     WebCore::JSMainThreadNullState state;
742     WebCore::TestObj * item = WebKit::core(self);
743     gchar* res = convertToUTF8String(item->getURLAttribute(WebCore::HTMLNames::reflectedurlattrAttr));
744     return res;
745 }
746
747 void
748 webkit_dom_test_obj_set_reflected_url_attr(WebKitDOMTestObj* self, const gchar* value)
749 {
750     g_return_if_fail(self);
751     WebCore::JSMainThreadNullState state;
752     WebCore::TestObj * item = WebKit::core(self);
753     g_return_if_fail(value);
754     WTF::String converted_value = WTF::String::fromUTF8(value);
755     item->setAttribute(WebCore::HTMLNames::reflectedurlattrAttr, converted_value);
756 }
757
758 gchar*
759 webkit_dom_test_obj_get_reflected_non_empty_url_attr(WebKitDOMTestObj* self)
760 {
761     g_return_val_if_fail(self, 0);
762     WebCore::JSMainThreadNullState state;
763     WebCore::TestObj * item = WebKit::core(self);
764     gchar* res = convertToUTF8String(item->getNonEmptyURLAttribute(WebCore::HTMLNames::reflectednonemptyurlattrAttr));
765     return res;
766 }
767
768 void
769 webkit_dom_test_obj_set_reflected_non_empty_url_attr(WebKitDOMTestObj* self, const gchar* value)
770 {
771     g_return_if_fail(self);
772     WebCore::JSMainThreadNullState state;
773     WebCore::TestObj * item = WebKit::core(self);
774     g_return_if_fail(value);
775     WTF::String converted_value = WTF::String::fromUTF8(value);
776     item->setAttribute(WebCore::HTMLNames::reflectednonemptyurlattrAttr, converted_value);
777 }
778
779 gchar*
780 webkit_dom_test_obj_get_reflected_string_attr(WebKitDOMTestObj* self)
781 {
782     g_return_val_if_fail(self, 0);
783     WebCore::JSMainThreadNullState state;
784     WebCore::TestObj * item = WebKit::core(self);
785     gchar* res = convertToUTF8String(item->getAttribute(WebCore::HTMLNames::customContentStringAttrAttr));
786     return res;
787 }
788
789 void
790 webkit_dom_test_obj_set_reflected_string_attr(WebKitDOMTestObj* self, const gchar* value)
791 {
792     g_return_if_fail(self);
793     WebCore::JSMainThreadNullState state;
794     WebCore::TestObj * item = WebKit::core(self);
795     g_return_if_fail(value);
796     WTF::String converted_value = WTF::String::fromUTF8(value);
797     item->setAttribute(WebCore::HTMLNames::customContentStringAttrAttr, converted_value);
798 }
799
800 glong
801 webkit_dom_test_obj_get_reflected_custom_integral_attr(WebKitDOMTestObj* self)
802 {
803     g_return_val_if_fail(self, 0);
804     WebCore::JSMainThreadNullState state;
805     WebCore::TestObj * item = WebKit::core(self);
806     glong res = item->getIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr);
807     return res;
808 }
809
810 void
811 webkit_dom_test_obj_set_reflected_custom_integral_attr(WebKitDOMTestObj* self, glong value)
812 {
813     g_return_if_fail(self);
814     WebCore::JSMainThreadNullState state;
815     WebCore::TestObj * item = WebKit::core(self);
816     item->setIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr, value);
817 }
818
819 gboolean
820 webkit_dom_test_obj_get_reflected_custom_boolean_attr(WebKitDOMTestObj* self)
821 {
822     g_return_val_if_fail(self, 0);
823     WebCore::JSMainThreadNullState state;
824     WebCore::TestObj * item = WebKit::core(self);
825     gboolean res = item->hasAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr);
826     return res;
827 }
828
829 void
830 webkit_dom_test_obj_set_reflected_custom_boolean_attr(WebKitDOMTestObj* self, gboolean value)
831 {
832     g_return_if_fail(self);
833     WebCore::JSMainThreadNullState state;
834     WebCore::TestObj * item = WebKit::core(self);
835     item->setBooleanAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr, value);
836 }
837
838 gchar*
839 webkit_dom_test_obj_get_reflected_custom_url_attr(WebKitDOMTestObj* self)
840 {
841     g_return_val_if_fail(self, 0);
842     WebCore::JSMainThreadNullState state;
843     WebCore::TestObj * item = WebKit::core(self);
844     gchar* res = convertToUTF8String(item->getURLAttribute(WebCore::HTMLNames::customContentURLAttrAttr));
845     return res;
846 }
847
848 void
849 webkit_dom_test_obj_set_reflected_custom_url_attr(WebKitDOMTestObj* self, const gchar* value)
850 {
851     g_return_if_fail(self);
852     WebCore::JSMainThreadNullState state;
853     WebCore::TestObj * item = WebKit::core(self);
854     g_return_if_fail(value);
855     WTF::String converted_value = WTF::String::fromUTF8(value);
856     item->setAttribute(WebCore::HTMLNames::customContentURLAttrAttr, converted_value);
857 }
858
859 gchar*
860 webkit_dom_test_obj_get_reflected_custom_non_empty_url_attr(WebKitDOMTestObj* self)
861 {
862     g_return_val_if_fail(self, 0);
863     WebCore::JSMainThreadNullState state;
864     WebCore::TestObj * item = WebKit::core(self);
865     gchar* res = convertToUTF8String(item->getNonEmptyURLAttribute(WebCore::HTMLNames::customContentNonEmptyURLAttrAttr));
866     return res;
867 }
868
869 void
870 webkit_dom_test_obj_set_reflected_custom_non_empty_url_attr(WebKitDOMTestObj* self, const gchar* value)
871 {
872     g_return_if_fail(self);
873     WebCore::JSMainThreadNullState state;
874     WebCore::TestObj * item = WebKit::core(self);
875     g_return_if_fail(value);
876     WTF::String converted_value = WTF::String::fromUTF8(value);
877     item->setAttribute(WebCore::HTMLNames::customContentNonEmptyURLAttrAttr, converted_value);
878 }
879
880 glong
881 webkit_dom_test_obj_get_attr_with_getter_exception(WebKitDOMTestObj* self, GError **error)
882 {
883     g_return_val_if_fail(self, 0);
884     WebCore::JSMainThreadNullState state;
885     WebCore::TestObj * item = WebKit::core(self);
886     WebCore::ExceptionCode ec = 0;
887     glong res = item->attrWithGetterException(ec);
888     if (ec) {
889         WebCore::ExceptionCodeDescription ecdesc;
890         WebCore::getExceptionCodeDescription(ec, ecdesc);
891         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
892     }
893     return res;
894 }
895
896 void
897 webkit_dom_test_obj_set_attr_with_getter_exception(WebKitDOMTestObj* self, glong value, GError **error)
898 {
899     g_return_if_fail(self);
900     WebCore::JSMainThreadNullState state;
901     WebCore::TestObj * item = WebKit::core(self);
902     WebCore::ExceptionCode ec = 0;
903     item->setAttrWithGetterException(value, ec);
904     if (ec) {
905         WebCore::ExceptionCodeDescription ecdesc;
906         WebCore::getExceptionCodeDescription(ec, ecdesc);
907         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
908     }
909 }
910
911 glong
912 webkit_dom_test_obj_get_attr_with_setter_exception(WebKitDOMTestObj* self)
913 {
914     g_return_val_if_fail(self, 0);
915     WebCore::JSMainThreadNullState state;
916     WebCore::TestObj * item = WebKit::core(self);
917     glong res = item->attrWithSetterException();
918     return res;
919 }
920
921 void
922 webkit_dom_test_obj_set_attr_with_setter_exception(WebKitDOMTestObj* self, glong value, GError **error)
923 {
924     g_return_if_fail(self);
925     WebCore::JSMainThreadNullState state;
926     WebCore::TestObj * item = WebKit::core(self);
927     WebCore::ExceptionCode ec = 0;
928     item->setAttrWithSetterException(value, ec);
929     if (ec) {
930         WebCore::ExceptionCodeDescription ecdesc;
931         WebCore::getExceptionCodeDescription(ec, ecdesc);
932         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
933     }
934 }
935
936 gchar*
937 webkit_dom_test_obj_get_string_attr_with_getter_exception(WebKitDOMTestObj* self, GError **error)
938 {
939     g_return_val_if_fail(self, 0);
940     WebCore::JSMainThreadNullState state;
941     WebCore::TestObj * item = WebKit::core(self);
942     WebCore::ExceptionCode ec = 0;
943     gchar* res = convertToUTF8String(item->stringAttrWithGetterException(ec));
944     return res;
945 }
946
947 void
948 webkit_dom_test_obj_set_string_attr_with_getter_exception(WebKitDOMTestObj* self, const gchar* value, GError **error)
949 {
950     g_return_if_fail(self);
951     WebCore::JSMainThreadNullState state;
952     WebCore::TestObj * item = WebKit::core(self);
953     g_return_if_fail(value);
954     WTF::String converted_value = WTF::String::fromUTF8(value);
955     WebCore::ExceptionCode ec = 0;
956     item->setStringAttrWithGetterException(converted_value, ec);
957     if (ec) {
958         WebCore::ExceptionCodeDescription ecdesc;
959         WebCore::getExceptionCodeDescription(ec, ecdesc);
960         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
961     }
962 }
963
964 gchar*
965 webkit_dom_test_obj_get_string_attr_with_setter_exception(WebKitDOMTestObj* self)
966 {
967     g_return_val_if_fail(self, 0);
968     WebCore::JSMainThreadNullState state;
969     WebCore::TestObj * item = WebKit::core(self);
970     gchar* res = convertToUTF8String(item->stringAttrWithSetterException());
971     return res;
972 }
973
974 void
975 webkit_dom_test_obj_set_string_attr_with_setter_exception(WebKitDOMTestObj* self, const gchar* value, GError **error)
976 {
977     g_return_if_fail(self);
978     WebCore::JSMainThreadNullState state;
979     WebCore::TestObj * item = WebKit::core(self);
980     g_return_if_fail(value);
981     WTF::String converted_value = WTF::String::fromUTF8(value);
982     WebCore::ExceptionCode ec = 0;
983     item->setStringAttrWithSetterException(converted_value, ec);
984     if (ec) {
985         WebCore::ExceptionCodeDescription ecdesc;
986         WebCore::getExceptionCodeDescription(ec, ecdesc);
987         g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name);
988     }
989 }
990
991 gchar*
992 webkit_dom_test_obj_get_script_string_attr(WebKitDOMTestObj* self)
993 {
994     g_return_val_if_fail(self, 0);
995     WebCore::JSMainThreadNullState state;
996     WebCore::TestObj * item = WebKit::core(self);
997     gchar* res = convertToUTF8String(item->scriptStringAttr());
998     return res;
999 }
1000
1001 glong
1002 webkit_dom_test_obj_get_conditional_attr1(WebKitDOMTestObj* self)
1003 {
1004 #if ENABLE(Condition1)
1005     g_return_val_if_fail(self, 0);
1006     WebCore::JSMainThreadNullState state;
1007     WebCore::TestObj * item = WebKit::core(self);
1008     glong res = item->conditionalAttr1();
1009     return res;
1010 #else
1011     return static_cast<glong>(0);
1012 #endif /* ENABLE(Condition1) */
1013 }
1014
1015 void
1016 webkit_dom_test_obj_set_conditional_attr1(WebKitDOMTestObj* self, glong value)
1017 {
1018 #if ENABLE(Condition1)
1019     g_return_if_fail(self);
1020     WebCore::JSMainThreadNullState state;
1021     WebCore::TestObj * item = WebKit::core(self);
1022     item->setConditionalAttr1(value);
1023 #endif /* ENABLE(Condition1) */
1024 }
1025
1026 glong
1027 webkit_dom_test_obj_get_conditional_attr2(WebKitDOMTestObj* self)
1028 {
1029 #if ENABLE(Condition1) && ENABLE(Condition2)
1030     g_return_val_if_fail(self, 0);
1031     WebCore::JSMainThreadNullState state;
1032     WebCore::TestObj * item = WebKit::core(self);
1033     glong res = item->conditionalAttr2();
1034     return res;
1035 #else
1036     return static_cast<glong>(0);
1037 #endif /* ENABLE(Condition1) && ENABLE(Condition2) */
1038 }
1039
1040 void
1041 webkit_dom_test_obj_set_conditional_attr2(WebKitDOMTestObj* self, glong value)
1042 {
1043 #if ENABLE(Condition1) && ENABLE(Condition2)
1044     g_return_if_fail(self);
1045     WebCore::JSMainThreadNullState state;
1046     WebCore::TestObj * item = WebKit::core(self);
1047     item->setConditionalAttr2(value);
1048 #endif /* ENABLE(Condition1) && ENABLE(Condition2) */
1049 }
1050
1051 glong
1052 webkit_dom_test_obj_get_conditional_attr3(WebKitDOMTestObj* self)
1053 {
1054 #if ENABLE(Condition1) || ENABLE(Condition2)
1055     g_return_val_if_fail(self, 0);
1056     WebCore::JSMainThreadNullState state;
1057     WebCore::TestObj * item = WebKit::core(self);
1058     glong res = item->conditionalAttr3();
1059     return res;
1060 #else
1061     return static_cast<glong>(0);
1062 #endif /* ENABLE(Condition1) || ENABLE(Condition2) */
1063 }
1064
1065 void
1066 webkit_dom_test_obj_set_conditional_attr3(WebKitDOMTestObj* self, glong value)
1067 {
1068 #if ENABLE(Condition1) || ENABLE(Condition2)
1069     g_return_if_fail(self);
1070     WebCore::JSMainThreadNullState state;
1071     WebCore::TestObj * item = WebKit::core(self);
1072     item->setConditionalAttr3(value);
1073 #endif /* ENABLE(Condition1) || ENABLE(Condition2) */
1074 }
1075
1076 glong
1077 webkit_dom_test_obj_get_description(WebKitDOMTestObj* self)
1078 {
1079     g_return_val_if_fail(self, 0);
1080     WebCore::JSMainThreadNullState state;
1081     WebCore::TestObj * item = WebKit::core(self);
1082     glong res = item->description();
1083     return res;
1084 }
1085
1086 glong
1087 webkit_dom_test_obj_get_id(WebKitDOMTestObj* self)
1088 {
1089     g_return_val_if_fail(self, 0);
1090     WebCore::JSMainThreadNullState state;
1091     WebCore::TestObj * item = WebKit::core(self);
1092     glong res = item->id();
1093     return res;
1094 }
1095
1096 void
1097 webkit_dom_test_obj_set_id(WebKitDOMTestObj* self, glong value)
1098 {
1099     g_return_if_fail(self);
1100     WebCore::JSMainThreadNullState state;
1101     WebCore::TestObj * item = WebKit::core(self);
1102     item->setId(value);
1103 }
1104
1105 gchar*
1106 webkit_dom_test_obj_get_hash(WebKitDOMTestObj* self)
1107 {
1108     g_return_val_if_fail(self, 0);
1109     WebCore::JSMainThreadNullState state;
1110     WebCore::TestObj * item = WebKit::core(self);
1111     gchar* res = convertToUTF8String(item->hash());
1112     return res;
1113 }
1114
1115
1116 G_DEFINE_TYPE(WebKitDOMTestObj, webkit_dom_test_obj, WEBKIT_TYPE_DOM_OBJECT)
1117
1118 namespace WebKit {
1119
1120 WebCore::TestObj* core(WebKitDOMTestObj* request)
1121 {
1122     g_return_val_if_fail(request, 0);
1123
1124     WebCore::TestObj* coreObject = static_cast<WebCore::TestObj*>(WEBKIT_DOM_OBJECT(request)->coreObject);
1125     g_return_val_if_fail(coreObject, 0);
1126
1127     return coreObject;
1128 }
1129
1130 } // namespace WebKit
1131 enum {
1132     PROP_0,
1133     PROP_READ_ONLY_INT_ATTR,
1134     PROP_READ_ONLY_STRING_ATTR,
1135     PROP_READ_ONLY_TEST_OBJ_ATTR,
1136     PROP_SHORT_ATTR,
1137     PROP_UNSIGNED_SHORT_ATTR,
1138     PROP_INT_ATTR,
1139     PROP_LONG_LONG_ATTR,
1140     PROP_UNSIGNED_LONG_LONG_ATTR,
1141     PROP_STRING_ATTR,
1142     PROP_TEST_OBJ_ATTR,
1143     PROP_XML_OBJ_ATTR,
1144     PROP_CREATE,
1145     PROP_REFLECTED_STRING_ATTR,
1146     PROP_REFLECTED_INTEGRAL_ATTR,
1147     PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR,
1148     PROP_REFLECTED_BOOLEAN_ATTR,
1149     PROP_REFLECTED_URL_ATTR,
1150     PROP_REFLECTED_NON_EMPTY_URL_ATTR,
1151     PROP_REFLECTED_STRING_ATTR,
1152     PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR,
1153     PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR,
1154     PROP_REFLECTED_CUSTOM_URL_ATTR,
1155     PROP_REFLECTED_CUSTOM_NON_EMPTY_URL_ATTR,
1156     PROP_ATTR_WITH_GETTER_EXCEPTION,
1157     PROP_ATTR_WITH_SETTER_EXCEPTION,
1158     PROP_STRING_ATTR_WITH_GETTER_EXCEPTION,
1159     PROP_STRING_ATTR_WITH_SETTER_EXCEPTION,
1160     PROP_CUSTOM_ATTR,
1161     PROP_SCRIPT_STRING_ATTR,
1162 #if ENABLE(Condition1)
1163     PROP_CONDITIONAL_ATTR1,
1164 #endif /* ENABLE(Condition1) */
1165 #if ENABLE(Condition1) && ENABLE(Condition2)
1166     PROP_CONDITIONAL_ATTR2,
1167 #endif /* ENABLE(Condition1) && ENABLE(Condition2) */
1168 #if ENABLE(Condition1) || ENABLE(Condition2)
1169     PROP_CONDITIONAL_ATTR3,
1170 #endif /* ENABLE(Condition1) || ENABLE(Condition2) */
1171     PROP_DESCRIPTION,
1172     PROP_ID,
1173     PROP_HASH,
1174 };
1175
1176
1177 static void webkit_dom_test_obj_finalize(GObject* object)
1178 {
1179     WebKitDOMObject* dom_object = WEBKIT_DOM_OBJECT(object);
1180     
1181     if (dom_object->coreObject) {
1182         WebCore::TestObj* coreObject = static_cast<WebCore::TestObj *>(dom_object->coreObject);
1183
1184         WebKit::DOMObjectCache::forget(coreObject);
1185         coreObject->deref();
1186
1187         dom_object->coreObject = NULL;
1188     }
1189
1190     G_OBJECT_CLASS(webkit_dom_test_obj_parent_class)->finalize(object);
1191 }
1192
1193 static void webkit_dom_test_obj_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec)
1194 {
1195     WebCore::JSMainThreadNullState state;
1196     WebKitDOMTestObj* self = WEBKIT_DOM_TEST_OBJ(object);
1197     WebCore::TestObj* coreSelf = WebKit::core(self);
1198     switch (prop_id) {
1199     case PROP_UNSIGNED_SHORT_ATTR:
1200     {
1201         coreSelf->setUnsignedShortAttr((g_value_get_ushort(value)));
1202         break;
1203     }
1204     case PROP_INT_ATTR:
1205     {
1206         coreSelf->setIntAttr((g_value_get_long(value)));
1207         break;
1208     }
1209     case PROP_UNSIGNED_LONG_LONG_ATTR:
1210     {
1211         coreSelf->setUnsignedLongLongAttr((g_value_get_uint64(value)));
1212         break;
1213     }
1214     case PROP_STRING_ATTR:
1215     {
1216         coreSelf->setStringAttr(WTF::String::fromUTF8(g_value_get_string(value)));
1217         break;
1218     }
1219     case PROP_CREATE:
1220     {
1221         coreSelf->setCreate((g_value_get_boolean(value)));
1222         break;
1223     }
1224     case PROP_REFLECTED_STRING_ATTR:
1225     {
1226         coreSelf->setAttribute(WebCore::HTMLNames::reflectedstringattrAttr, WTF::String::fromUTF8(g_value_get_string(value)));
1227         break;
1228     }
1229     case PROP_REFLECTED_INTEGRAL_ATTR:
1230     {
1231         coreSelf->setIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr, (g_value_get_long(value)));
1232         break;
1233     }
1234     case PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR:
1235     {
1236         coreSelf->setUnsignedIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr, (g_value_get_ulong(value)));
1237         break;
1238     }
1239     case PROP_REFLECTED_BOOLEAN_ATTR:
1240     {
1241         coreSelf->setBooleanAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr, (g_value_get_boolean(value)));
1242         break;
1243     }
1244     case PROP_REFLECTED_URL_ATTR:
1245     {
1246         coreSelf->setAttribute(WebCore::HTMLNames::reflectedurlattrAttr, WTF::String::fromUTF8(g_value_get_string(value)));
1247         break;
1248     }
1249     case PROP_REFLECTED_NON_EMPTY_URL_ATTR:
1250     {
1251         coreSelf->setAttribute(WebCore::HTMLNames::reflectednonemptyurlattrAttr, WTF::String::fromUTF8(g_value_get_string(value)));
1252         break;
1253     }
1254     case PROP_REFLECTED_STRING_ATTR:
1255     {
1256         coreSelf->setAttribute(WebCore::HTMLNames::customContentStringAttrAttr, WTF::String::fromUTF8(g_value_get_string(value)));
1257         break;
1258     }
1259     case PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR:
1260     {
1261         coreSelf->setIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr, (g_value_get_long(value)));
1262         break;
1263     }
1264     case PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR:
1265     {
1266         coreSelf->setBooleanAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr, (g_value_get_boolean(value)));
1267         break;
1268     }
1269     case PROP_REFLECTED_CUSTOM_URL_ATTR:
1270     {
1271         coreSelf->setAttribute(WebCore::HTMLNames::customContentURLAttrAttr, WTF::String::fromUTF8(g_value_get_string(value)));
1272         break;
1273     }
1274     case PROP_REFLECTED_CUSTOM_NON_EMPTY_URL_ATTR:
1275     {
1276         coreSelf->setAttribute(WebCore::HTMLNames::customContentNonEmptyURLAttrAttr, WTF::String::fromUTF8(g_value_get_string(value)));
1277         break;
1278     }
1279     case PROP_ATTR_WITH_GETTER_EXCEPTION:
1280     {
1281         WebCore::ExceptionCode ec = 0;
1282         coreSelf->setAttrWithGetterException((g_value_get_long(value)), ec);
1283         break;
1284     }
1285     case PROP_ATTR_WITH_SETTER_EXCEPTION:
1286     {
1287         WebCore::ExceptionCode ec = 0;
1288         coreSelf->setAttrWithSetterException((g_value_get_long(value)), ec);
1289         break;
1290     }
1291     case PROP_STRING_ATTR_WITH_GETTER_EXCEPTION:
1292     {
1293         WebCore::ExceptionCode ec = 0;
1294         coreSelf->setStringAttrWithGetterException(WTF::String::fromUTF8(g_value_get_string(value)), ec);
1295         break;
1296     }
1297     case PROP_STRING_ATTR_WITH_SETTER_EXCEPTION:
1298     {
1299         WebCore::ExceptionCode ec = 0;
1300         coreSelf->setStringAttrWithSetterException(WTF::String::fromUTF8(g_value_get_string(value)), ec);
1301         break;
1302     }
1303 #if ENABLE(Condition1)
1304     case PROP_CONDITIONAL_ATTR1:
1305     {
1306         coreSelf->setConditionalAttr1((g_value_get_long(value)));
1307         break;
1308     }
1309 #endif /* ENABLE(Condition1) */
1310 #if ENABLE(Condition1) && ENABLE(Condition2)
1311     case PROP_CONDITIONAL_ATTR2:
1312     {
1313         coreSelf->setConditionalAttr2((g_value_get_long(value)));
1314         break;
1315     }
1316 #endif /* ENABLE(Condition1) && ENABLE(Condition2) */
1317 #if ENABLE(Condition1) || ENABLE(Condition2)
1318     case PROP_CONDITIONAL_ATTR3:
1319     {
1320         coreSelf->setConditionalAttr3((g_value_get_long(value)));
1321         break;
1322     }
1323 #endif /* ENABLE(Condition1) || ENABLE(Condition2) */
1324     case PROP_ID:
1325     {
1326         coreSelf->setId((g_value_get_long(value)));
1327         break;
1328     }
1329     default:
1330         G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
1331         break;
1332     }
1333 }
1334
1335
1336 static void webkit_dom_test_obj_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
1337 {
1338     WebCore::JSMainThreadNullState state;
1339     WebKitDOMTestObj* self = WEBKIT_DOM_TEST_OBJ(object);
1340     WebCore::TestObj* coreSelf = WebKit::core(self);
1341     switch (prop_id) {
1342     case PROP_READ_ONLY_INT_ATTR:
1343     {
1344         g_value_set_long(value, coreSelf->readOnlyIntAttr());
1345         break;
1346     }
1347     case PROP_READ_ONLY_STRING_ATTR:
1348     {
1349         g_value_take_string(value, convertToUTF8String(coreSelf->readOnlyStringAttr()));
1350         break;
1351     }
1352     case PROP_READ_ONLY_TEST_OBJ_ATTR:
1353     {
1354         RefPtr<WebCore::TestObj> ptr = coreSelf->readOnlyTestObjAttr();
1355         g_value_set_object(value, WebKit::kit(ptr.get()));
1356         break;
1357     }
1358     case PROP_SHORT_ATTR:
1359     {
1360         g_value_set_int(value, coreSelf->shortAttr());
1361         break;
1362     }
1363     case PROP_UNSIGNED_SHORT_ATTR:
1364     {
1365         g_value_set_uint(value, coreSelf->unsignedShortAttr());
1366         break;
1367     }
1368     case PROP_INT_ATTR:
1369     {
1370         g_value_set_long(value, coreSelf->intAttr());
1371         break;
1372     }
1373     case PROP_LONG_LONG_ATTR:
1374     {
1375         g_value_set_int64(value, coreSelf->longLongAttr());
1376         break;
1377     }
1378     case PROP_UNSIGNED_LONG_LONG_ATTR:
1379     {
1380         g_value_set_uint64(value, coreSelf->unsignedLongLongAttr());
1381         break;
1382     }
1383     case PROP_STRING_ATTR:
1384     {
1385         g_value_take_string(value, convertToUTF8String(coreSelf->stringAttr()));
1386         break;
1387     }
1388     case PROP_TEST_OBJ_ATTR:
1389     {
1390         RefPtr<WebCore::TestObj> ptr = coreSelf->testObjAttr();
1391         g_value_set_object(value, WebKit::kit(ptr.get()));
1392         break;
1393     }
1394     case PROP_XML_OBJ_ATTR:
1395     {
1396         RefPtr<WebCore::TestObj> ptr = coreSelf->xmlObjAttr();
1397         g_value_set_object(value, WebKit::kit(ptr.get()));
1398         break;
1399     }
1400     case PROP_CREATE:
1401     {
1402         g_value_set_boolean(value, coreSelf->isCreate());
1403         break;
1404     }
1405     case PROP_REFLECTED_STRING_ATTR:
1406     {
1407         g_value_take_string(value, convertToUTF8String(coreSelf->getAttribute(WebCore::HTMLNames::reflectedstringattrAttr)));
1408         break;
1409     }
1410     case PROP_REFLECTED_INTEGRAL_ATTR:
1411     {
1412         g_value_set_long(value, coreSelf->getIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr));
1413         break;
1414     }
1415     case PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR:
1416     {
1417         g_value_set_ulong(value, coreSelf->getUnsignedIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr));
1418         break;
1419     }
1420     case PROP_REFLECTED_BOOLEAN_ATTR:
1421     {
1422         g_value_set_boolean(value, coreSelf->hasAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr));
1423         break;
1424     }
1425     case PROP_REFLECTED_URL_ATTR:
1426     {
1427         g_value_take_string(value, convertToUTF8String(coreSelf->getURLAttribute(WebCore::HTMLNames::reflectedurlattrAttr)));
1428         break;
1429     }
1430     case PROP_REFLECTED_NON_EMPTY_URL_ATTR:
1431     {
1432         g_value_take_string(value, convertToUTF8String(coreSelf->getNonEmptyURLAttribute(WebCore::HTMLNames::reflectednonemptyurlattrAttr)));
1433         break;
1434     }
1435     case PROP_REFLECTED_STRING_ATTR:
1436     {
1437         g_value_take_string(value, convertToUTF8String(coreSelf->getAttribute(WebCore::HTMLNames::customContentStringAttrAttr)));
1438         break;
1439     }
1440     case PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR:
1441     {
1442         g_value_set_long(value, coreSelf->getIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr));
1443         break;
1444     }
1445     case PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR:
1446     {
1447         g_value_set_boolean(value, coreSelf->hasAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr));
1448         break;
1449     }
1450     case PROP_REFLECTED_CUSTOM_URL_ATTR:
1451     {
1452         g_value_take_string(value, convertToUTF8String(coreSelf->getURLAttribute(WebCore::HTMLNames::customContentURLAttrAttr)));
1453         break;
1454     }
1455     case PROP_REFLECTED_CUSTOM_NON_EMPTY_URL_ATTR:
1456     {
1457         g_value_take_string(value, convertToUTF8String(coreSelf->getNonEmptyURLAttribute(WebCore::HTMLNames::customContentNonEmptyURLAttrAttr)));
1458         break;
1459     }
1460     case PROP_ATTR_WITH_GETTER_EXCEPTION:
1461     {
1462         WebCore::ExceptionCode ec = 0;
1463         g_value_set_long(value, coreSelf->attrWithGetterException(ec));
1464         break;
1465     }
1466     case PROP_ATTR_WITH_SETTER_EXCEPTION:
1467     {
1468         g_value_set_long(value, coreSelf->attrWithSetterException());
1469         break;
1470     }
1471     case PROP_STRING_ATTR_WITH_GETTER_EXCEPTION:
1472     {
1473         WebCore::ExceptionCode ec = 0;
1474         g_value_take_string(value, convertToUTF8String(coreSelf->stringAttrWithGetterException(ec)));
1475         break;
1476     }
1477     case PROP_STRING_ATTR_WITH_SETTER_EXCEPTION:
1478     {
1479         g_value_take_string(value, convertToUTF8String(coreSelf->stringAttrWithSetterException()));
1480         break;
1481     }
1482     case PROP_SCRIPT_STRING_ATTR:
1483     {
1484         g_value_take_string(value, convertToUTF8String(coreSelf->scriptStringAttr()));
1485         break;
1486     }
1487 #if ENABLE(Condition1)
1488     case PROP_CONDITIONAL_ATTR1:
1489     {
1490         g_value_set_long(value, coreSelf->conditionalAttr1());
1491         break;
1492     }
1493 #endif /* ENABLE(Condition1) */
1494 #if ENABLE(Condition1) && ENABLE(Condition2)
1495     case PROP_CONDITIONAL_ATTR2:
1496     {
1497         g_value_set_long(value, coreSelf->conditionalAttr2());
1498         break;
1499     }
1500 #endif /* ENABLE(Condition1) && ENABLE(Condition2) */
1501 #if ENABLE(Condition1) || ENABLE(Condition2)
1502     case PROP_CONDITIONAL_ATTR3:
1503     {
1504         g_value_set_long(value, coreSelf->conditionalAttr3());
1505         break;
1506     }
1507 #endif /* ENABLE(Condition1) || ENABLE(Condition2) */
1508     case PROP_DESCRIPTION:
1509     {
1510         g_value_set_long(value, coreSelf->description());
1511         break;
1512     }
1513     case PROP_ID:
1514     {
1515         g_value_set_long(value, coreSelf->id());
1516         break;
1517     }
1518     case PROP_HASH:
1519     {
1520         g_value_take_string(value, convertToUTF8String(coreSelf->hash()));
1521         break;
1522     }
1523     default:
1524         G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
1525         break;
1526     }
1527 }
1528
1529
1530 static void webkit_dom_test_obj_constructed(GObject* object)
1531 {
1532
1533     if (G_OBJECT_CLASS(webkit_dom_test_obj_parent_class)->constructed)
1534         G_OBJECT_CLASS(webkit_dom_test_obj_parent_class)->constructed(object);
1535 }
1536
1537 static void webkit_dom_test_obj_class_init(WebKitDOMTestObjClass* requestClass)
1538 {
1539     GObjectClass *gobjectClass = G_OBJECT_CLASS(requestClass);
1540     gobjectClass->finalize = webkit_dom_test_obj_finalize;
1541     gobjectClass->set_property = webkit_dom_test_obj_set_property;
1542     gobjectClass->get_property = webkit_dom_test_obj_get_property;
1543     gobjectClass->constructed = webkit_dom_test_obj_constructed;
1544
1545     g_object_class_install_property(gobjectClass,
1546                                     PROP_READ_ONLY_INT_ATTR,
1547                                     g_param_spec_long("read-only-int-attr", /* name */
1548                                                            "test_obj_read-only-int-attr", /* short description */
1549                                                            "read-only  glong TestObj.read-only-int-attr", /* longer - could do with some extra doc stuff here */
1550                                                            G_MINLONG, /* min */
1551 G_MAXLONG, /* max */
1552 0, /* default */
1553                                                            WEBKIT_PARAM_READABLE));
1554     g_object_class_install_property(gobjectClass,
1555                                     PROP_READ_ONLY_STRING_ATTR,
1556                                     g_param_spec_string("read-only-string-attr", /* name */
1557                                                            "test_obj_read-only-string-attr", /* short description */
1558                                                            "read-only  gchar* TestObj.read-only-string-attr", /* longer - could do with some extra doc stuff here */
1559                                                            "", /* default */
1560                                                            WEBKIT_PARAM_READABLE));
1561     g_object_class_install_property(gobjectClass,
1562                                     PROP_READ_ONLY_TEST_OBJ_ATTR,
1563                                     g_param_spec_object("read-only-test-obj-attr", /* name */
1564                                                            "test_obj_read-only-test-obj-attr", /* short description */
1565                                                            "read-only  WebKitDOMTestObj* TestObj.read-only-test-obj-attr", /* longer - could do with some extra doc stuff here */
1566                                                            WEBKIT_TYPE_DOM_TEST_OBJ, /* gobject type */
1567                                                            WEBKIT_PARAM_READABLE));
1568     g_object_class_install_property(gobjectClass,
1569                                     PROP_SHORT_ATTR,
1570                                     g_param_spec_int("short-attr", /* name */
1571                                                            "test_obj_short-attr", /* short description */
1572                                                            "read-write  gshort TestObj.short-attr", /* longer - could do with some extra doc stuff here */
1573                                                            G_MININT, /* min */
1574 G_MAXINT, /* max */
1575 0, /* default */
1576                                                            WEBKIT_PARAM_READWRITE));
1577     g_object_class_install_property(gobjectClass,
1578                                     PROP_UNSIGNED_SHORT_ATTR,
1579                                     g_param_spec_uint("unsigned-short-attr", /* name */
1580                                                            "test_obj_unsigned-short-attr", /* short description */
1581                                                            "read-write  gushort TestObj.unsigned-short-attr", /* longer - could do with some extra doc stuff here */
1582                                                            0, /* min */
1583 G_MAXUINT16, /* max */
1584 0, /* default */
1585                                                            WEBKIT_PARAM_READWRITE));
1586     g_object_class_install_property(gobjectClass,
1587                                     PROP_INT_ATTR,
1588                                     g_param_spec_long("int-attr", /* name */
1589                                                            "test_obj_int-attr", /* short description */
1590                                                            "read-write  glong TestObj.int-attr", /* longer - could do with some extra doc stuff here */
1591                                                            G_MINLONG, /* min */
1592 G_MAXLONG, /* max */
1593 0, /* default */
1594                                                            WEBKIT_PARAM_READWRITE));
1595     g_object_class_install_property(gobjectClass,
1596                                     PROP_LONG_LONG_ATTR,
1597                                     g_param_spec_int64("long-long-attr", /* name */
1598                                                            "test_obj_long-long-attr", /* short description */
1599                                                            "read-write  gint64 TestObj.long-long-attr", /* longer - could do with some extra doc stuff here */
1600                                                            G_MININT64, /* min */
1601 G_MAXINT64, /* max */
1602 0, /* default */
1603                                                            WEBKIT_PARAM_READWRITE));
1604     g_object_class_install_property(gobjectClass,
1605                                     PROP_UNSIGNED_LONG_LONG_ATTR,
1606                                     g_param_spec_uint64("unsigned-long-long-attr", /* name */
1607                                                            "test_obj_unsigned-long-long-attr", /* short description */
1608                                                            "read-write  guint64 TestObj.unsigned-long-long-attr", /* longer - could do with some extra doc stuff here */
1609                                                            0, /* min */
1610 G_MAXUINT64, /* min */
1611 0, /* default */
1612                                                            WEBKIT_PARAM_READWRITE));
1613     g_object_class_install_property(gobjectClass,
1614                                     PROP_STRING_ATTR,
1615                                     g_param_spec_string("string-attr", /* name */
1616                                                            "test_obj_string-attr", /* short description */
1617                                                            "read-write  gchar* TestObj.string-attr", /* longer - could do with some extra doc stuff here */
1618                                                            "", /* default */
1619                                                            WEBKIT_PARAM_READWRITE));
1620     g_object_class_install_property(gobjectClass,
1621                                     PROP_TEST_OBJ_ATTR,
1622                                     g_param_spec_object("test-obj-attr", /* name */
1623                                                            "test_obj_test-obj-attr", /* short description */
1624                                                            "read-write  WebKitDOMTestObj* TestObj.test-obj-attr", /* longer - could do with some extra doc stuff here */
1625                                                            WEBKIT_TYPE_DOM_TEST_OBJ, /* gobject type */
1626                                                            WEBKIT_PARAM_READWRITE));
1627     g_object_class_install_property(gobjectClass,
1628                                     PROP_XML_OBJ_ATTR,
1629                                     g_param_spec_object("xml-obj-attr", /* name */
1630                                                            "test_obj_xml-obj-attr", /* short description */
1631                                                            "read-write  WebKitDOMTestObj* TestObj.xml-obj-attr", /* longer - could do with some extra doc stuff here */
1632                                                            WEBKIT_TYPE_DOM_TEST_OBJ, /* gobject type */
1633                                                            WEBKIT_PARAM_READWRITE));
1634     g_object_class_install_property(gobjectClass,
1635                                     PROP_CREATE,
1636                                     g_param_spec_boolean("create", /* name */
1637                                                            "test_obj_create", /* short description */
1638                                                            "read-write  gboolean TestObj.create", /* longer - could do with some extra doc stuff here */
1639                                                            FALSE, /* default */
1640                                                            WEBKIT_PARAM_READWRITE));
1641     g_object_class_install_property(gobjectClass,
1642                                     PROP_REFLECTED_STRING_ATTR,
1643                                     g_param_spec_string("reflected-string-attr", /* name */
1644                                                            "test_obj_reflected-string-attr", /* short description */
1645                                                            "read-write  gchar* TestObj.reflected-string-attr", /* longer - could do with some extra doc stuff here */
1646                                                            "", /* default */
1647                                                            WEBKIT_PARAM_READWRITE));
1648     g_object_class_install_property(gobjectClass,
1649                                     PROP_REFLECTED_INTEGRAL_ATTR,
1650                                     g_param_spec_long("reflected-integral-attr", /* name */
1651                                                            "test_obj_reflected-integral-attr", /* short description */
1652                                                            "read-write  glong TestObj.reflected-integral-attr", /* longer - could do with some extra doc stuff here */
1653                                                            G_MINLONG, /* min */
1654 G_MAXLONG, /* max */
1655 0, /* default */
1656                                                            WEBKIT_PARAM_READWRITE));
1657     g_object_class_install_property(gobjectClass,
1658                                     PROP_REFLECTED_UNSIGNED_INTEGRAL_ATTR,
1659                                     g_param_spec_ulong("reflected-unsigned-integral-attr", /* name */
1660                                                            "test_obj_reflected-unsigned-integral-attr", /* short description */
1661                                                            "read-write  gulong TestObj.reflected-unsigned-integral-attr", /* longer - could do with some extra doc stuff here */
1662                                                            0, /* min */
1663 G_MAXULONG, /* max */
1664 0, /* default */
1665                                                            WEBKIT_PARAM_READWRITE));
1666     g_object_class_install_property(gobjectClass,
1667                                     PROP_REFLECTED_BOOLEAN_ATTR,
1668                                     g_param_spec_boolean("reflected-boolean-attr", /* name */
1669                                                            "test_obj_reflected-boolean-attr", /* short description */
1670                                                            "read-write  gboolean TestObj.reflected-boolean-attr", /* longer - could do with some extra doc stuff here */
1671                                                            FALSE, /* default */
1672                                                            WEBKIT_PARAM_READWRITE));
1673     g_object_class_install_property(gobjectClass,
1674                                     PROP_REFLECTED_URL_ATTR,
1675                                     g_param_spec_string("reflected-url-attr", /* name */
1676                                                            "test_obj_reflected-url-attr", /* short description */
1677                                                            "read-write  gchar* TestObj.reflected-url-attr", /* longer - could do with some extra doc stuff here */
1678                                                            "", /* default */
1679                                                            WEBKIT_PARAM_READWRITE));
1680     g_object_class_install_property(gobjectClass,
1681                                     PROP_REFLECTED_NON_EMPTY_URL_ATTR,
1682                                     g_param_spec_string("reflected-non-empty-url-attr", /* name */
1683                                                            "test_obj_reflected-non-empty-url-attr", /* short description */
1684                                                            "read-write  gchar* TestObj.reflected-non-empty-url-attr", /* longer - could do with some extra doc stuff here */
1685                                                            "", /* default */
1686                                                            WEBKIT_PARAM_READWRITE));
1687     g_object_class_install_property(gobjectClass,
1688                                     PROP_REFLECTED_STRING_ATTR,
1689                                     g_param_spec_string("reflected-string-attr", /* name */
1690                                                            "test_obj_reflected-string-attr", /* short description */
1691                                                            "read-write  gchar* TestObj.reflected-string-attr", /* longer - could do with some extra doc stuff here */
1692                                                            "", /* default */
1693                                                            WEBKIT_PARAM_READWRITE));
1694     g_object_class_install_property(gobjectClass,
1695                                     PROP_REFLECTED_CUSTOM_INTEGRAL_ATTR,
1696                                     g_param_spec_long("reflected-custom-integral-attr", /* name */
1697                                                            "test_obj_reflected-custom-integral-attr", /* short description */
1698                                                            "read-write  glong TestObj.reflected-custom-integral-attr", /* longer - could do with some extra doc stuff here */
1699                                                            G_MINLONG, /* min */
1700 G_MAXLONG, /* max */
1701 0, /* default */
1702                                                            WEBKIT_PARAM_READWRITE));
1703     g_object_class_install_property(gobjectClass,
1704                                     PROP_REFLECTED_CUSTOM_BOOLEAN_ATTR,
1705                                     g_param_spec_boolean("reflected-custom-boolean-attr", /* name */
1706                                                            "test_obj_reflected-custom-boolean-attr", /* short description */
1707                                                            "read-write  gboolean TestObj.reflected-custom-boolean-attr", /* longer - could do with some extra doc stuff here */
1708                                                            FALSE, /* default */
1709                                                            WEBKIT_PARAM_READWRITE));
1710     g_object_class_install_property(gobjectClass,
1711                                     PROP_REFLECTED_CUSTOM_URL_ATTR,
1712                                     g_param_spec_string("reflected-custom-url-attr", /* name */
1713                                                            "test_obj_reflected-custom-url-attr", /* short description */
1714                                                            "read-write  gchar* TestObj.reflected-custom-url-attr", /* longer - could do with some extra doc stuff here */
1715                                                            "", /* default */
1716                                                            WEBKIT_PARAM_READWRITE));
1717     g_object_class_install_property(gobjectClass,
1718                                     PROP_REFLECTED_CUSTOM_NON_EMPTY_URL_ATTR,
1719                                     g_param_spec_string("reflected-custom-non-empty-url-attr", /* name */
1720                                                            "test_obj_reflected-custom-non-empty-url-attr", /* short description */
1721                                                            "read-write  gchar* TestObj.reflected-custom-non-empty-url-attr", /* longer - could do with some extra doc stuff here */
1722                                                            "", /* default */
1723                                                            WEBKIT_PARAM_READWRITE));
1724     g_object_class_install_property(gobjectClass,
1725                                     PROP_ATTR_WITH_GETTER_EXCEPTION,
1726                                     g_param_spec_long("attr-with-getter-exception", /* name */
1727                                                            "test_obj_attr-with-getter-exception", /* short description */
1728                                                            "read-write  glong TestObj.attr-with-getter-exception", /* longer - could do with some extra doc stuff here */
1729                                                            G_MINLONG, /* min */
1730 G_MAXLONG, /* max */
1731 0, /* default */
1732                                                            WEBKIT_PARAM_READWRITE));
1733     g_object_class_install_property(gobjectClass,
1734                                     PROP_ATTR_WITH_SETTER_EXCEPTION,
1735                                     g_param_spec_long("attr-with-setter-exception", /* name */
1736                                                            "test_obj_attr-with-setter-exception", /* short description */
1737                                                            "read-write  glong TestObj.attr-with-setter-exception", /* longer - could do with some extra doc stuff here */
1738                                                            G_MINLONG, /* min */
1739 G_MAXLONG, /* max */
1740 0, /* default */
1741                                                            WEBKIT_PARAM_READWRITE));
1742     g_object_class_install_property(gobjectClass,
1743                                     PROP_STRING_ATTR_WITH_GETTER_EXCEPTION,
1744                                     g_param_spec_string("string-attr-with-getter-exception", /* name */
1745                                                            "test_obj_string-attr-with-getter-exception", /* short description */
1746                                                            "read-write  gchar* TestObj.string-attr-with-getter-exception", /* longer - could do with some extra doc stuff here */
1747                                                            "", /* default */
1748                                                            WEBKIT_PARAM_READWRITE));
1749     g_object_class_install_property(gobjectClass,
1750                                     PROP_STRING_ATTR_WITH_SETTER_EXCEPTION,
1751                                     g_param_spec_string("string-attr-with-setter-exception", /* name */
1752                                                            "test_obj_string-attr-with-setter-exception", /* short description */
1753                                                            "read-write  gchar* TestObj.string-attr-with-setter-exception", /* longer - could do with some extra doc stuff here */
1754                                                            "", /* default */
1755                                                            WEBKIT_PARAM_READWRITE));
1756     g_object_class_install_property(gobjectClass,
1757                                     PROP_SCRIPT_STRING_ATTR,
1758                                     g_param_spec_string("script-string-attr", /* name */
1759                                                            "test_obj_script-string-attr", /* short description */
1760                                                            "read-only  gchar* TestObj.script-string-attr", /* longer - could do with some extra doc stuff here */
1761                                                            "", /* default */
1762                                                            WEBKIT_PARAM_READABLE));
1763 #if ENABLE(Condition1)
1764     g_object_class_install_property(gobjectClass,
1765                                     PROP_CONDITIONAL_ATTR1,
1766                                     g_param_spec_long("conditional-attr1", /* name */
1767                                                            "test_obj_conditional-attr1", /* short description */
1768                                                            "read-write  glong TestObj.conditional-attr1", /* longer - could do with some extra doc stuff here */
1769                                                            G_MINLONG, /* min */
1770 G_MAXLONG, /* max */
1771 0, /* default */
1772                                                            WEBKIT_PARAM_READWRITE));
1773 #endif /* ENABLE(Condition1) */
1774 #if ENABLE(Condition1) && ENABLE(Condition2)
1775     g_object_class_install_property(gobjectClass,
1776                                     PROP_CONDITIONAL_ATTR2,
1777                                     g_param_spec_long("conditional-attr2", /* name */
1778                                                            "test_obj_conditional-attr2", /* short description */
1779                                                            "read-write  glong TestObj.conditional-attr2", /* longer - could do with some extra doc stuff here */
1780                                                            G_MINLONG, /* min */
1781 G_MAXLONG, /* max */
1782 0, /* default */
1783                                                            WEBKIT_PARAM_READWRITE));
1784 #endif /* ENABLE(Condition1) && ENABLE(Condition2) */
1785 #if ENABLE(Condition1) || ENABLE(Condition2)
1786     g_object_class_install_property(gobjectClass,
1787                                     PROP_CONDITIONAL_ATTR3,
1788                                     g_param_spec_long("conditional-attr3", /* name */
1789                                                            "test_obj_conditional-attr3", /* short description */
1790                                                            "read-write  glong TestObj.conditional-attr3", /* longer - could do with some extra doc stuff here */
1791                                                            G_MINLONG, /* min */
1792 G_MAXLONG, /* max */
1793 0, /* default */
1794                                                            WEBKIT_PARAM_READWRITE));
1795 #endif /* ENABLE(Condition1) || ENABLE(Condition2) */
1796     g_object_class_install_property(gobjectClass,
1797                                     PROP_DESCRIPTION,
1798                                     g_param_spec_long("description", /* name */
1799                                                            "test_obj_description", /* short description */
1800                                                            "read-only  glong TestObj.description", /* longer - could do with some extra doc stuff here */
1801                                                            G_MINLONG, /* min */
1802 G_MAXLONG, /* max */
1803 0, /* default */
1804                                                            WEBKIT_PARAM_READABLE));
1805     g_object_class_install_property(gobjectClass,
1806                                     PROP_ID,
1807                                     g_param_spec_long("id", /* name */
1808                                                            "test_obj_id", /* short description */
1809                                                            "read-write  glong TestObj.id", /* longer - could do with some extra doc stuff here */
1810                                                            G_MINLONG, /* min */
1811 G_MAXLONG, /* max */
1812 0, /* default */
1813                                                            WEBKIT_PARAM_READWRITE));
1814     g_object_class_install_property(gobjectClass,
1815                                     PROP_HASH,
1816                                     g_param_spec_string("hash", /* name */
1817                                                            "test_obj_hash", /* short description */
1818                                                            "read-only  gchar* TestObj.hash", /* longer - could do with some extra doc stuff here */
1819                                                            "", /* default */
1820                                                            WEBKIT_PARAM_READABLE));
1821
1822
1823 }
1824
1825 static void webkit_dom_test_obj_init(WebKitDOMTestObj* request)
1826 {
1827 }
1828
1829 namespace WebKit {
1830 WebKitDOMTestObj* wrapTestObj(WebCore::TestObj* coreObject)
1831 {
1832     g_return_val_if_fail(coreObject, 0);
1833
1834     /* We call ref() rather than using a C++ smart pointer because we can't store a C++ object
1835      * in a C-allocated GObject structure.  See the finalize() code for the
1836      * matching deref().
1837      */
1838     coreObject->ref();
1839
1840     return  WEBKIT_DOM_TEST_OBJ(g_object_new(WEBKIT_TYPE_DOM_TEST_OBJ,
1841                                                "core-object", coreObject, NULL));
1842 }
1843 } // namespace WebKit