WebKitDOMTestSerializedScriptValueInterface.cpp [plain text]
#include "config.h"
#include "WebKitDOMTestSerializedScriptValueInterface.h"
#include "CSSImportRule.h"
#include "DOMObjectCache.h"
#include "Document.h"
#include "ExceptionCode.h"
#include "ExceptionCodeDescription.h"
#include "JSMainThreadExecState.h"
#include "SerializedScriptValue.h"
#include "WebKitDOMPrivate.h"
#include "WebKitDOMTestSerializedScriptValueInterfacePrivate.h"
#include "gobject/ConvertToUTF8String.h"
#include <wtf/GetPtr.h>
#include <wtf/RefPtr.h>
#define WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE(obj, WEBKIT_DOM_TYPE_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE, WebKitDOMTestSerializedScriptValueInterfacePrivate)
typedef struct _WebKitDOMTestSerializedScriptValueInterfacePrivate {
#if ENABLE(Condition1) || ENABLE(Condition2)
RefPtr<WebCore::TestSerializedScriptValueInterface> coreObject;
#endif // ENABLE(Condition1) || ENABLE(Condition2)
} WebKitDOMTestSerializedScriptValueInterfacePrivate;
#if ENABLE(Condition1) || ENABLE(Condition2)
namespace WebKit {
WebKitDOMTestSerializedScriptValueInterface* kit(WebCore::TestSerializedScriptValueInterface* obj)
{
if (!obj)
return 0;
if (gpointer ret = DOMObjectCache::get(obj))
return WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(ret);
return wrapTestSerializedScriptValueInterface(obj);
}
WebCore::TestSerializedScriptValueInterface* core(WebKitDOMTestSerializedScriptValueInterface* request)
{
return request ? static_cast<WebCore::TestSerializedScriptValueInterface*>(WEBKIT_DOM_OBJECT(request)->coreObject) : 0;
}
WebKitDOMTestSerializedScriptValueInterface* wrapTestSerializedScriptValueInterface(WebCore::TestSerializedScriptValueInterface* coreObject)
{
ASSERT(coreObject);
return WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(g_object_new(WEBKIT_DOM_TYPE_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE, "core-object", coreObject, nullptr));
}
}
#endif // ENABLE(Condition1) || ENABLE(Condition2)
G_DEFINE_TYPE(WebKitDOMTestSerializedScriptValueInterface, webkit_dom_test_serialized_script_value_interface, WEBKIT_DOM_TYPE_OBJECT)
enum {
PROP_0,
PROP_VALUE,
PROP_READONLY_VALUE,
PROP_CACHED_VALUE,
PROP_CACHED_READONLY_VALUE,
};
static void webkit_dom_test_serialized_script_value_interface_finalize(GObject* object)
{
WebKitDOMTestSerializedScriptValueInterfacePrivate* priv = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(object);
#if ENABLE(Condition1) || ENABLE(Condition2)
WebKit::DOMObjectCache::forget(priv->coreObject.get());
#endif // ENABLE(Condition1) || ENABLE(Condition2)
priv->~WebKitDOMTestSerializedScriptValueInterfacePrivate();
G_OBJECT_CLASS(webkit_dom_test_serialized_script_value_interface_parent_class)->finalize(object);
}
static void webkit_dom_test_serialized_script_value_interface_get_property(GObject* object, guint propertyId, GValue* value, GParamSpec* pspec)
{
WebKitDOMTestSerializedScriptValueInterface* self = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(object);
switch (propertyId) {
case PROP_VALUE:
g_value_set_object(value, webkit_dom_test_serialized_script_value_interface_get_value(self));
break;
case PROP_READONLY_VALUE:
g_value_set_object(value, webkit_dom_test_serialized_script_value_interface_get_readonly_value(self));
break;
case PROP_CACHED_VALUE:
g_value_set_object(value, webkit_dom_test_serialized_script_value_interface_get_cached_value(self));
break;
case PROP_CACHED_READONLY_VALUE:
g_value_set_object(value, webkit_dom_test_serialized_script_value_interface_get_cached_readonly_value(self));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec);
break;
}
}
static GObject* webkit_dom_test_serialized_script_value_interface_constructor(GType type, guint constructPropertiesCount, GObjectConstructParam* constructProperties)
{
GObject* object = G_OBJECT_CLASS(webkit_dom_test_serialized_script_value_interface_parent_class)->constructor(type, constructPropertiesCount, constructProperties);
#if ENABLE(Condition1) || ENABLE(Condition2)
WebKitDOMTestSerializedScriptValueInterfacePrivate* priv = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(object);
priv->coreObject = static_cast<WebCore::TestSerializedScriptValueInterface*>(WEBKIT_DOM_OBJECT(object)->coreObject);
WebKit::DOMObjectCache::put(priv->coreObject.get(), object);
#endif // ENABLE(Condition1) || ENABLE(Condition2)
return object;
}
static void webkit_dom_test_serialized_script_value_interface_class_init(WebKitDOMTestSerializedScriptValueInterfaceClass* requestClass)
{
GObjectClass* gobjectClass = G_OBJECT_CLASS(requestClass);
g_type_class_add_private(gobjectClass, sizeof(WebKitDOMTestSerializedScriptValueInterfacePrivate));
gobjectClass->constructor = webkit_dom_test_serialized_script_value_interface_constructor;
gobjectClass->finalize = webkit_dom_test_serialized_script_value_interface_finalize;
gobjectClass->get_property = webkit_dom_test_serialized_script_value_interface_get_property;
g_object_class_install_property(
gobjectClass,
PROP_VALUE,
g_param_spec_object(
"value",
"TestSerializedScriptValueInterface:value",
"read-only gchar* TestSerializedScriptValueInterface:value",
WEBKIT_DOM_TYPE_SERIALIZED_SCRIPT_VALUE,
WEBKIT_PARAM_READABLE));
g_object_class_install_property(
gobjectClass,
PROP_READONLY_VALUE,
g_param_spec_object(
"readonly-value",
"TestSerializedScriptValueInterface:readonly-value",
"read-only gchar* TestSerializedScriptValueInterface:readonly-value",
WEBKIT_DOM_TYPE_SERIALIZED_SCRIPT_VALUE,
WEBKIT_PARAM_READABLE));
g_object_class_install_property(
gobjectClass,
PROP_CACHED_VALUE,
g_param_spec_object(
"cached-value",
"TestSerializedScriptValueInterface:cached-value",
"read-only gchar* TestSerializedScriptValueInterface:cached-value",
WEBKIT_DOM_TYPE_SERIALIZED_SCRIPT_VALUE,
WEBKIT_PARAM_READABLE));
g_object_class_install_property(
gobjectClass,
PROP_CACHED_READONLY_VALUE,
g_param_spec_object(
"cached-readonly-value",
"TestSerializedScriptValueInterface:cached-readonly-value",
"read-only gchar* TestSerializedScriptValueInterface:cached-readonly-value",
WEBKIT_DOM_TYPE_SERIALIZED_SCRIPT_VALUE,
WEBKIT_PARAM_READABLE));
}
static void webkit_dom_test_serialized_script_value_interface_init(WebKitDOMTestSerializedScriptValueInterface* request)
{
WebKitDOMTestSerializedScriptValueInterfacePrivate* priv = WEBKIT_DOM_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE_GET_PRIVATE(request);
new (priv) WebKitDOMTestSerializedScriptValueInterfacePrivate();
}
gchar* webkit_dom_test_serialized_script_value_interface_get_value(WebKitDOMTestSerializedScriptValueInterface* self)
{
#if ENABLE(Condition1) || ENABLE(Condition2)
WebCore::JSMainThreadNullState state;
g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
gchar* result = convertToUTF8String(item->value()->toString());
return result;
#else
UNUSED_PARAM(self);
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
return 0;
#endif
}
void webkit_dom_test_serialized_script_value_interface_set_value(WebKitDOMTestSerializedScriptValueInterface* self, const gchar* value)
{
#if ENABLE(Condition1) || ENABLE(Condition2)
WebCore::JSMainThreadNullState state;
g_return_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self));
g_return_if_fail(value);
WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
item->setValue(WebCore::SerializedScriptValue::create(WTF::String::fromUTF8(value)));
#else
UNUSED_PARAM(self);
UNUSED_PARAM(value);
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
#endif
}
gchar* webkit_dom_test_serialized_script_value_interface_get_readonly_value(WebKitDOMTestSerializedScriptValueInterface* self)
{
#if ENABLE(Condition1) || ENABLE(Condition2)
WebCore::JSMainThreadNullState state;
g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
gchar* result = convertToUTF8String(item->readonlyValue()->toString());
return result;
#else
UNUSED_PARAM(self);
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
return 0;
#endif
}
gchar* webkit_dom_test_serialized_script_value_interface_get_cached_value(WebKitDOMTestSerializedScriptValueInterface* self)
{
#if ENABLE(Condition1) || ENABLE(Condition2)
WebCore::JSMainThreadNullState state;
g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
gchar* result = convertToUTF8String(item->cachedValue()->toString());
return result;
#else
UNUSED_PARAM(self);
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
return 0;
#endif
}
void webkit_dom_test_serialized_script_value_interface_set_cached_value(WebKitDOMTestSerializedScriptValueInterface* self, const gchar* value)
{
#if ENABLE(Condition1) || ENABLE(Condition2)
WebCore::JSMainThreadNullState state;
g_return_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self));
g_return_if_fail(value);
WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
item->setCachedValue(WebCore::SerializedScriptValue::create(WTF::String::fromUTF8(value)));
#else
UNUSED_PARAM(self);
UNUSED_PARAM(value);
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
#endif
}
gchar* webkit_dom_test_serialized_script_value_interface_get_cached_readonly_value(WebKitDOMTestSerializedScriptValueInterface* self)
{
#if ENABLE(Condition1) || ENABLE(Condition2)
WebCore::JSMainThreadNullState state;
g_return_val_if_fail(WEBKIT_DOM_IS_TEST_SERIALIZED_SCRIPT_VALUE_INTERFACE(self), 0);
WebCore::TestSerializedScriptValueInterface* item = WebKit::core(self);
gchar* result = convertToUTF8String(item->cachedReadonlyValue()->toString());
return result;
#else
UNUSED_PARAM(self);
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition1")
WEBKIT_WARN_FEATURE_NOT_PRESENT("Condition2")
return 0;
#endif
}