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 "config.h"
22#include "WebKitDOMTestSerializedScriptValueInterface.h"
23
24#include "CSSImportRule.h"
25#include "DOMObjectCache.h"
26#include "ExceptionCode.h"
27#include "JSMainThreadExecState.h"
28#include "WebKitDOMPrivate.h"
29#include "WebKitDOMSerializedScriptValuePrivate.h"
30#include "WebKitDOMTestSerializedScriptValueInterfacePrivate.h"
31#include "gobject/ConvertToUTF8String.h"
32#include <wtf/GetPtr.h>
33#include <wtf/RefPtr.h>
34
35#define WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE(obj, WEBKIT_TYPE_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE, WebKitDOMTestSerializedScriptValueInterfacePrivate)
36
37typedef struct _WebKitDOMTestSerializedScriptValueInterfacePrivate {
38#if ENABLE(Condition1) || ENABLE(Condition2)
39    RefPtr<WebCore::TestSerializedScriptValueInterface> coreObject;
40#endif // ENABLE(Condition1) || ENABLE(Condition2)
41} WebKitDOMTestSerializedScriptValueInterfacePrivate;
42
43#if ENABLE(Condition1) || ENABLE(Condition2)
44
45namespace WebKit {
46
47WebKitDOMTestSerializedScriptValueInterface* kit(WebCore::TestSerializedScriptValueInterface* obj)
48{
49    if (!obj)
50        return 0;
51
52    if (gpointer ret = DOMObjectCache::get(obj))
53        return WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(ret);
54
55    return wrapTestSerializedScriptValueInterface(obj);
56}
57
58WebCore::TestSerializedScriptValueInterface* core(WebKitDOMTestSerializedScriptValueInterface* request)
59{
60    return request ? static_cast<WebCore::TestSerializedScriptValueInterface*>(WEBKIT_DOM_OBJECT(request)->coreObject) : 0;
61}
62
63WebKitDOMTestSerializedScriptValueInterface* wrapTestSerializedScriptValueInterface(WebCore::TestSerializedScriptValueInterface* coreObject)
64{
65    ASSERT(coreObject);
66    return WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(g_object_new(WEBKIT_TYPE_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE, "core-object", coreObject, NULL));
67}
68
69} // namespace WebKit
70
71#endif // ENABLE(Condition1) || ENABLE(Condition2)
72
73G_DEFINE_TYPE(WebKitDOMTestSerializedScriptValueInterface, webkit_dom_test_serialized_script_value_interface, WEBKIT_TYPE_DOM_OBJECT)
74
75enum {
76    PROP_0,
77    PROP_VALUE,
78    PROP_READONLY_VALUE,
79    PROP_CACHED_VALUE,
80    PROP_CACHED_READONLY_VALUE,
81};
82
83static void webkit_dom_test_serialized_script_value_interface_finalize(GObject* object)
84{
85    WebKitDOMTestSerializedScriptValueInterfacePrivate* priv = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(object);
86#if ENABLE(Condition1) || ENABLE(Condition2)
87    WebKit::DOMObjectCache::forget(priv->coreObject.get());
88#endif // ENABLE(Condition1) || ENABLE(Condition2)
89    priv->~WebKitDOMTestSerializedScriptValueInterfacePrivate();
90    G_OBJECT_CLASS(webkit_dom_test_serialized_script_value_interface_parent_class)->finalize(object);
91}
92
93static void webkit_dom_test_serialized_script_value_interface_get_property(GObject* object, guint propertyId, GValue* value, GParamSpec* pspec)
94{
95    WebCore::JSMainThreadNullState state;
96#if ENABLE(Condition1) || ENABLE(Condition2)
97    WebKitDOMTestSerializedScriptValueInterface* self = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(object);
98    WebCore::TestSerializedScriptValueInterface* coreSelf = WebKit::core(self);
99#endif // ENABLE(Condition1) || ENABLE(Condition2)
100    switch (propertyId) {
101    case PROP_VALUE: {
102#if ENABLE(Condition1) || ENABLE(Condition2)
103        RefPtr<WebCore::SerializedScriptValue> ptr = coreSelf->value();
104        g_value_set_object(value, WebKit::kit(ptr.get()));
105#else
106        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
107        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
108#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
109        break;
110    }
111    case PROP_READONLY_VALUE: {
112#if ENABLE(Condition1) || ENABLE(Condition2)
113        RefPtr<WebCore::SerializedScriptValue> ptr = coreSelf->readonlyValue();
114        g_value_set_object(value, WebKit::kit(ptr.get()));
115#else
116        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
117        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
118#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
119        break;
120    }
121    case PROP_CACHED_VALUE: {
122#if ENABLE(Condition1) || ENABLE(Condition2)
123        RefPtr<WebCore::SerializedScriptValue> ptr = coreSelf->cachedValue();
124        g_value_set_object(value, WebKit::kit(ptr.get()));
125#else
126        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
127        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
128#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
129        break;
130    }
131    case PROP_CACHED_READONLY_VALUE: {
132#if ENABLE(Condition1) || ENABLE(Condition2)
133        RefPtr<WebCore::SerializedScriptValue> ptr = coreSelf->cachedReadonlyValue();
134        g_value_set_object(value, WebKit::kit(ptr.get()));
135#else
136        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
137        WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
138#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
139        break;
140    }
141    default:
142        G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec);
143        break;
144    }
145}
146
147static GObject* webkit_dom_test_serialized_script_value_interface_constructor(GType type, guint constructPropertiesCount, GObjectConstructParam* constructProperties)
148{
149    GObject* object = G_OBJECT_CLASS(webkit_dom_test_serialized_script_value_interface_parent_class)->constructor(type, constructPropertiesCount, constructProperties);
150#if ENABLE(Condition1) || ENABLE(Condition2)
151    WebKitDOMTestSerializedScriptValueInterfacePrivate* priv = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(object);
152    priv->coreObject = static_cast<WebCore::TestSerializedScriptValueInterface*>(WEBKIT_DOM_OBJECT(object)->coreObject);
153    WebKit::DOMObjectCache::put(priv->coreObject.get(), object);
154#endif // ENABLE(Condition1) || ENABLE(Condition2)
155    return object;
156}
157
158static void webkit_dom_test_serialized_script_value_interface_class_init(WebKitDOMTestSerializedScriptValueInterfaceClass* requestClass)
159{
160    GObjectClass* gobjectClass = G_OBJECT_CLASS(requestClass);
161    g_type_class_add_private(gobjectClass, sizeof(WebKitDOMTestSerializedScriptValueInterfacePrivate));
162    gobjectClass->constructor = webkit_dom_test_serialized_script_value_interface_constructor;
163    gobjectClass->finalize = webkit_dom_test_serialized_script_value_interface_finalize;
164    gobjectClass->get_property = webkit_dom_test_serialized_script_value_interface_get_property;
165
166    g_object_class_install_property(gobjectClass,
167                                    PROP_VALUE,
168                                    g_param_spec_object("value", /* name */
169                                                           "test_serialized_script_value_interface_value", /* short description */
170                                                           "read-write  WebKitDOMSerializedScriptValue* TestSerializedScriptValueInterface.value", /* longer - could do with some extra doc stuff here */
171                                                           WEBKIT_TYPE_DOM_SERIALIZED_SCRIPT_VALUE, /* gobject type */
172                                                           WEBKIT_PARAM_READWRITE));
173    g_object_class_install_property(gobjectClass,
174                                    PROP_READONLY_VALUE,
175                                    g_param_spec_object("readonly-value", /* name */
176                                                           "test_serialized_script_value_interface_readonly-value", /* short description */
177                                                           "read-only  WebKitDOMSerializedScriptValue* TestSerializedScriptValueInterface.readonly-value", /* longer - could do with some extra doc stuff here */
178                                                           WEBKIT_TYPE_DOM_SERIALIZED_SCRIPT_VALUE, /* gobject type */
179                                                           WEBKIT_PARAM_READABLE));
180    g_object_class_install_property(gobjectClass,
181                                    PROP_CACHED_VALUE,
182                                    g_param_spec_object("cached-value", /* name */
183                                                           "test_serialized_script_value_interface_cached-value", /* short description */
184                                                           "read-write  WebKitDOMSerializedScriptValue* TestSerializedScriptValueInterface.cached-value", /* longer - could do with some extra doc stuff here */
185                                                           WEBKIT_TYPE_DOM_SERIALIZED_SCRIPT_VALUE, /* gobject type */
186                                                           WEBKIT_PARAM_READWRITE));
187    g_object_class_install_property(gobjectClass,
188                                    PROP_CACHED_READONLY_VALUE,
189                                    g_param_spec_object("cached-readonly-value", /* name */
190                                                           "test_serialized_script_value_interface_cached-readonly-value", /* short description */
191                                                           "read-only  WebKitDOMSerializedScriptValue* TestSerializedScriptValueInterface.cached-readonly-value", /* longer - could do with some extra doc stuff here */
192                                                           WEBKIT_TYPE_DOM_SERIALIZED_SCRIPT_VALUE, /* gobject type */
193                                                           WEBKIT_PARAM_READABLE));
194}
195
196static void webkit_dom_test_serialized_script_value_interface_init(WebKitDOMTestSerializedScriptValueInterface* request)
197{
198    WebKitDOMTestSerializedScriptValueInterfacePrivate* priv = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(request);
199    new (priv) WebKitDOMTestSerializedScriptValueInterfacePrivate();
200}
201
202WebKitDOMSerializedScriptValue*
203webkit_dom_test_serialized_script_value_interface_get_value(WebKitDOMTestSerializedScriptValueInterface* self)
204{
205#if ENABLE(Condition1) || ENABLE(Condition2)
206    WebCore::JSMainThreadNullState state;
207    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
208    WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
209    RefPtr<WebCore::SerializedScriptValue> gobjectResult = WTF::getPtr(item->value());
210    return WebKit::kit(gobjectResult.get());
211#else
212    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
213    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
214    return 0;
215#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
216}
217
218void
219webkit_dom_test_serialized_script_value_interface_set_value(WebKitDOMTestSerializedScriptValueInterface* self, WebKitDOMSerializedScriptValue* value)
220{
221#if ENABLE(Condition1) || ENABLE(Condition2)
222    WebCore::JSMainThreadNullState state;
223    g_return_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self));
224    g_return_if_fail(WEBKIT_DOM_IS_SERIALIZED_SCRIPT_VALUE(value));
225    WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
226    WebCore::SerializedScriptValue* convertedValue = WebKit::core(value);
227    item->setValue(convertedValue);
228#else
229    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
230    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
231#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
232}
233
234WebKitDOMSerializedScriptValue*
235webkit_dom_test_serialized_script_value_interface_get_readonly_value(WebKitDOMTestSerializedScriptValueInterface* self)
236{
237#if ENABLE(Condition1) || ENABLE(Condition2)
238    WebCore::JSMainThreadNullState state;
239    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
240    WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
241    RefPtr<WebCore::SerializedScriptValue> gobjectResult = WTF::getPtr(item->readonlyValue());
242    return WebKit::kit(gobjectResult.get());
243#else
244    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
245    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
246    return 0;
247#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
248}
249
250WebKitDOMSerializedScriptValue*
251webkit_dom_test_serialized_script_value_interface_get_cached_value(WebKitDOMTestSerializedScriptValueInterface* self)
252{
253#if ENABLE(Condition1) || ENABLE(Condition2)
254    WebCore::JSMainThreadNullState state;
255    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
256    WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
257    RefPtr<WebCore::SerializedScriptValue> gobjectResult = WTF::getPtr(item->cachedValue());
258    return WebKit::kit(gobjectResult.get());
259#else
260    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
261    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
262    return 0;
263#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
264}
265
266void
267webkit_dom_test_serialized_script_value_interface_set_cached_value(WebKitDOMTestSerializedScriptValueInterface* self, WebKitDOMSerializedScriptValue* value)
268{
269#if ENABLE(Condition1) || ENABLE(Condition2)
270    WebCore::JSMainThreadNullState state;
271    g_return_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self));
272    g_return_if_fail(WEBKIT_DOM_IS_SERIALIZED_SCRIPT_VALUE(value));
273    WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
274    WebCore::SerializedScriptValue* convertedValue = WebKit::core(value);
275    item->setCachedValue(convertedValue);
276#else
277    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
278    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
279#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
280}
281
282WebKitDOMSerializedScriptValue*
283webkit_dom_test_serialized_script_value_interface_get_cached_readonly_value(WebKitDOMTestSerializedScriptValueInterface* self)
284{
285#if ENABLE(Condition1) || ENABLE(Condition2)
286    WebCore::JSMainThreadNullState state;
287    g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
288    WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
289    RefPtr<WebCore::SerializedScriptValue> gobjectResult = WTF::getPtr(item->cachedReadonlyValue());
290    return WebKit::kit(gobjectResult.get());
291#else
292    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
293    WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
294    return 0;
295#endif /* ENABLE(Condition1) || ENABLE(Condition2) */
296}
297
298