summaryrefslogtreecommitdiff
path: root/tests/dbus/async-no-reply_server.c-expected
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dbus/async-no-reply_server.c-expected')
-rw-r--r--tests/dbus/async-no-reply_server.c-expected765
1 files changed, 765 insertions, 0 deletions
diff --git a/tests/dbus/async-no-reply_server.c-expected b/tests/dbus/async-no-reply_server.c-expected
new file mode 100644
index 000000000..f01b56937
--- /dev/null
+++ b/tests/dbus/async-no-reply_server.c-expected
@@ -0,0 +1,765 @@
+/* dbus_async_no_reply_server.c generated by valac, the Vala compiler
+ * generated from dbus_async_no_reply_server.vala, do not modify */
+
+#include <glib-object.h>
+#include <gio/gio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <glib.h>
+
+#if !defined(VALA_EXTERN)
+#if defined(_MSC_VER)
+#define VALA_EXTERN __declspec(dllexport) extern
+#elif __GNUC__ >= 4
+#define VALA_EXTERN __attribute__((visibility("default"))) extern
+#else
+#define VALA_EXTERN extern
+#endif
+#endif
+
+#define TYPE_TEST (test_get_type ())
+#define TEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TEST, Test))
+#define TEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TEST, TestClass))
+#define IS_TEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TEST))
+#define IS_TEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TEST))
+#define TEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TEST, TestClass))
+
+typedef struct _Test Test;
+typedef struct _TestClass TestClass;
+typedef struct _TestPrivate TestPrivate;
+enum {
+ TEST_0_PROPERTY,
+ TEST_NUM_PROPERTIES
+};
+static GParamSpec* test_properties[TEST_NUM_PROPERTIES];
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+typedef struct _TestListMessagesData TestListMessagesData;
+#define _g_free0(var) (var = (g_free (var), NULL))
+typedef struct _TestPostMessageData TestPostMessageData;
+typedef struct _TestListMessagesReadyData TestListMessagesReadyData;
+typedef struct _TestPostMessageReadyData TestPostMessageReadyData;
+#define _g_variant_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_unref (var), NULL)))
+#define _g_main_loop_unref0(var) ((var == NULL) ? NULL : (var = (g_main_loop_unref (var), NULL)))
+#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
+#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
+#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
+#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
+
+struct _Test {
+ GObject parent_instance;
+ TestPrivate * priv;
+};
+
+struct _TestClass {
+ GObjectClass parent_class;
+};
+
+struct _TestPrivate {
+ gchar** messages;
+ gint messages_length1;
+ gint _messages_size_;
+};
+
+struct _TestListMessagesData {
+ int _state_;
+ GObject* _source_object_;
+ GAsyncResult* _res_;
+ GTask* _async_result;
+ Test* self;
+ gchar** result;
+ gint result_length1;
+ gchar** _tmp0_;
+ gint _tmp0__length1;
+ gchar** _tmp1_;
+ gint _tmp1__length1;
+ gchar** _tmp2_;
+ gint _tmp2__length1;
+};
+
+struct _TestPostMessageData {
+ int _state_;
+ GObject* _source_object_;
+ GAsyncResult* _res_;
+ GTask* _async_result;
+ Test* self;
+ gchar* message;
+ gchar* _tmp0_;
+};
+
+struct _TestListMessagesReadyData {
+ GDBusMethodInvocation* _invocation_;
+};
+
+struct _TestPostMessageReadyData {
+ GDBusMethodInvocation* _invocation_;
+ gchar* message;
+};
+
+static gint Test_private_offset;
+static gpointer test_parent_class = NULL;
+VALA_EXTERN GMainLoop* main_loop;
+GMainLoop* main_loop = NULL;
+
+VALA_EXTERN GType test_get_type (void) G_GNUC_CONST ;
+G_DEFINE_AUTOPTR_CLEANUP_FUNC (Test, g_object_unref)
+VALA_EXTERN guint test_register_object (void* object,
+ GDBusConnection* connection,
+ const gchar* path,
+ GError** error);
+static void test_list_messages_data_free (gpointer _data);
+VALA_EXTERN void test_list_messages (Test* self,
+ GAsyncReadyCallback _callback_,
+ gpointer _user_data_);
+VALA_EXTERN gchar** test_list_messages_finish (Test* self,
+ GAsyncResult* _res_,
+ gint* result_length1);
+static gboolean test_list_messages_co (TestListMessagesData* _data_);
+static gchar** _vala_array_dup1 (gchar** self,
+ gssize length);
+static void test_post_message_data_free (gpointer _data);
+VALA_EXTERN void test_post_message (Test* self,
+ const gchar* message,
+ GAsyncReadyCallback _callback_,
+ gpointer _user_data_);
+VALA_EXTERN void test_post_message_finish (Test* self,
+ GAsyncResult* _res_);
+static gboolean test_post_message_co (TestPostMessageData* _data_);
+static void _vala_array_add1 (gchar** * array,
+ gint* length,
+ gint* size,
+ gchar* value);
+VALA_EXTERN Test* test_new (void);
+VALA_EXTERN Test* test_construct (GType object_type);
+static void test_finalize (GObject * obj);
+static GType test_get_type_once (void);
+static void _dbus_test_list_messages (Test* self,
+ GVariant* _parameters_,
+ GDBusMethodInvocation* invocation);
+static void _dbus_test_list_messages_ready (GObject * source_object,
+ GAsyncResult * _res_,
+ gpointer _user_data_);
+static void _dbus_test_post_message (Test* self,
+ GVariant* _parameters_,
+ GDBusMethodInvocation* invocation);
+static void _dbus_test_post_message_ready (GObject * source_object,
+ GAsyncResult * _res_,
+ gpointer _user_data_);
+static void test_dbus_interface_method_call (GDBusConnection* connection,
+ const gchar* sender,
+ const gchar* object_path,
+ const gchar* interface_name,
+ const gchar* method_name,
+ GVariant* parameters,
+ GDBusMethodInvocation* invocation,
+ gpointer user_data);
+static GVariant* test_dbus_interface_get_property (GDBusConnection* connection,
+ const gchar* sender,
+ const gchar* object_path,
+ const gchar* interface_name,
+ const gchar* property_name,
+ GError** error,
+ gpointer user_data);
+static gboolean test_dbus_interface_set_property (GDBusConnection* connection,
+ const gchar* sender,
+ const gchar* object_path,
+ const gchar* interface_name,
+ const gchar* property_name,
+ GVariant* value,
+ GError** error,
+ gpointer user_data);
+static void _test_unregister_object (gpointer user_data);
+VALA_EXTERN void client_exit (GPid pid,
+ gint status);
+static void _vala_main (void);
+static guint _variant_get1 (GVariant* value);
+static void _client_exit_gchild_watch_func (GPid pid,
+ gint wait_status,
+ gpointer self);
+static void _vala_array_destroy (gpointer array,
+ gssize array_length,
+ GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array,
+ gssize array_length,
+ GDestroyNotify destroy_func);
+
+static const GDBusArgInfo _test_dbus_arg_info_list_messages_result = {-1, "result", "as", NULL};
+static const GDBusArgInfo * const _test_dbus_arg_info_list_messages_in[] = {NULL};
+static const GDBusArgInfo * const _test_dbus_arg_info_list_messages_out[] = {&_test_dbus_arg_info_list_messages_result, NULL};
+static const GDBusMethodInfo _test_dbus_method_info_list_messages = {-1, "ListMessages", (GDBusArgInfo **) (&_test_dbus_arg_info_list_messages_in), (GDBusArgInfo **) (&_test_dbus_arg_info_list_messages_out), NULL};
+static const GDBusArgInfo _test_dbus_arg_info_post_message_message = {-1, "message", "s", NULL};
+static const GDBusArgInfo * const _test_dbus_arg_info_post_message_in[] = {&_test_dbus_arg_info_post_message_message, NULL};
+static const GDBusArgInfo * const _test_dbus_arg_info_post_message_out[] = {NULL};
+static const GDBusMethodInfo _test_dbus_method_info_post_message = {-1, "PostMessage", (GDBusArgInfo **) (&_test_dbus_arg_info_post_message_in), (GDBusArgInfo **) (&_test_dbus_arg_info_post_message_out), NULL};
+static const GDBusMethodInfo * const _test_dbus_method_info[] = {&_test_dbus_method_info_list_messages, &_test_dbus_method_info_post_message, NULL};
+static const GDBusSignalInfo * const _test_dbus_signal_info[] = {NULL};
+static const GDBusPropertyInfo * const _test_dbus_property_info[] = {NULL};
+static const GDBusInterfaceInfo _test_dbus_interface_info = {-1, "org.example.Test", (GDBusMethodInfo **) (&_test_dbus_method_info), (GDBusSignalInfo **) (&_test_dbus_signal_info), (GDBusPropertyInfo **) (&_test_dbus_property_info), NULL};
+static const GDBusInterfaceVTable _test_dbus_interface_vtable = {test_dbus_interface_method_call, test_dbus_interface_get_property, test_dbus_interface_set_property};
+
+static inline gpointer
+test_get_instance_private (Test* self)
+{
+ return G_STRUCT_MEMBER_P (self, Test_private_offset);
+}
+
+static void
+test_list_messages_data_free (gpointer _data)
+{
+ TestListMessagesData* _data_;
+ _data_ = _data;
+ _data_->result = (_vala_array_free (_data_->result, _data_->result_length1, (GDestroyNotify) g_free), NULL);
+ _g_object_unref0 (_data_->self);
+ g_slice_free (TestListMessagesData, _data_);
+}
+
+static gpointer
+_g_object_ref0 (gpointer self)
+{
+ return self ? g_object_ref (self) : NULL;
+}
+
+void
+test_list_messages (Test* self,
+ GAsyncReadyCallback _callback_,
+ gpointer _user_data_)
+{
+ TestListMessagesData* _data_;
+ Test* _tmp0_;
+ g_return_if_fail (IS_TEST (self));
+ _data_ = g_slice_new0 (TestListMessagesData);
+ _data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
+ g_task_set_task_data (_data_->_async_result, _data_, test_list_messages_data_free);
+ _tmp0_ = _g_object_ref0 (self);
+ _data_->self = _tmp0_;
+ test_list_messages_co (_data_);
+}
+
+gchar**
+test_list_messages_finish (Test* self,
+ GAsyncResult* _res_,
+ gint* result_length1)
+{
+ gchar** result;
+ TestListMessagesData* _data_;
+ _data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
+ result = _data_->result;
+ *result_length1 = _data_->result_length1;
+ _data_->result = NULL;
+ return result;
+}
+
+static gchar**
+_vala_array_dup1 (gchar** self,
+ gssize length)
+{
+ if (length >= 0) {
+ gchar** result;
+ gssize i;
+ result = g_new0 (gchar*, length + 1);
+ for (i = 0; i < length; i++) {
+ gchar* _tmp0_;
+ _tmp0_ = g_strdup (self[i]);
+ result[i] = _tmp0_;
+ }
+ return result;
+ }
+ return NULL;
+}
+
+static gboolean
+test_list_messages_co (TestListMessagesData* _data_)
+{
+ switch (_data_->_state_) {
+ case 0:
+ goto _state_0;
+ default:
+ g_assert_not_reached ();
+ }
+ _state_0:
+ _data_->_tmp0_ = _data_->self->priv->messages;
+ _data_->_tmp0__length1 = _data_->self->priv->messages_length1;
+ _data_->_tmp1_ = (_data_->_tmp0_ != NULL) ? _vala_array_dup1 (_data_->_tmp0_, _data_->_tmp0__length1) : _data_->_tmp0_;
+ _data_->_tmp1__length1 = _data_->_tmp0__length1;
+ _data_->_tmp2_ = _data_->_tmp1_;
+ _data_->_tmp2__length1 = _data_->_tmp1__length1;
+ _data_->result_length1 = _data_->_tmp2__length1;
+ _data_->result = _data_->_tmp2_;
+ g_task_return_pointer (_data_->_async_result, _data_, NULL);
+ if (_data_->_state_ != 0) {
+ while (!g_task_get_completed (_data_->_async_result)) {
+ g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
+ }
+ }
+ g_object_unref (_data_->_async_result);
+ return FALSE;
+}
+
+static void
+test_post_message_data_free (gpointer _data)
+{
+ TestPostMessageData* _data_;
+ _data_ = _data;
+ _g_free0 (_data_->message);
+ _g_object_unref0 (_data_->self);
+ g_slice_free (TestPostMessageData, _data_);
+}
+
+void
+test_post_message (Test* self,
+ const gchar* message,
+ GAsyncReadyCallback _callback_,
+ gpointer _user_data_)
+{
+ TestPostMessageData* _data_;
+ Test* _tmp0_;
+ gchar* _tmp1_;
+ g_return_if_fail (IS_TEST (self));
+ g_return_if_fail (message != NULL);
+ _data_ = g_slice_new0 (TestPostMessageData);
+ _data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
+ g_task_set_task_data (_data_->_async_result, _data_, test_post_message_data_free);
+ _tmp0_ = _g_object_ref0 (self);
+ _data_->self = _tmp0_;
+ _tmp1_ = g_strdup (message);
+ _g_free0 (_data_->message);
+ _data_->message = _tmp1_;
+ test_post_message_co (_data_);
+}
+
+void
+test_post_message_finish (Test* self,
+ GAsyncResult* _res_)
+{
+ TestPostMessageData* _data_;
+ _data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
+}
+
+static void
+_vala_array_add1 (gchar** * array,
+ gint* length,
+ gint* size,
+ gchar* value)
+{
+ if ((*length) == (*size)) {
+ *size = (*size) ? (2 * (*size)) : 4;
+ *array = g_renew (gchar*, *array, (*size) + 1);
+ }
+ (*array)[(*length)++] = value;
+ (*array)[*length] = NULL;
+}
+
+static gboolean
+test_post_message_co (TestPostMessageData* _data_)
+{
+ switch (_data_->_state_) {
+ case 0:
+ goto _state_0;
+ default:
+ g_assert_not_reached ();
+ }
+ _state_0:
+ _data_->_tmp0_ = g_strdup (_data_->message);
+ _vala_array_add1 (&_data_->self->priv->messages, &_data_->self->priv->messages_length1, &_data_->self->priv->_messages_size_, _data_->_tmp0_);
+ g_task_return_pointer (_data_->_async_result, _data_, NULL);
+ if (_data_->_state_ != 0) {
+ while (!g_task_get_completed (_data_->_async_result)) {
+ g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
+ }
+ }
+ g_object_unref (_data_->_async_result);
+ return FALSE;
+}
+
+Test*
+test_construct (GType object_type)
+{
+ Test * self = NULL;
+ self = (Test*) g_object_new (object_type, NULL);
+ return self;
+}
+
+Test*
+test_new (void)
+{
+ return test_construct (TYPE_TEST);
+}
+
+static void
+test_class_init (TestClass * klass,
+ gpointer klass_data)
+{
+ test_parent_class = g_type_class_peek_parent (klass);
+ g_type_class_adjust_private_offset (klass, &Test_private_offset);
+ G_OBJECT_CLASS (klass)->finalize = test_finalize;
+}
+
+static void
+test_instance_init (Test * self,
+ gpointer klass)
+{
+ gchar** _tmp0_;
+ self->priv = test_get_instance_private (self);
+ _tmp0_ = g_new0 (gchar*, 0 + 1);
+ self->priv->messages = _tmp0_;
+ self->priv->messages_length1 = 0;
+ self->priv->_messages_size_ = self->priv->messages_length1;
+}
+
+static void
+test_finalize (GObject * obj)
+{
+ Test * self;
+ self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TEST, Test);
+ self->priv->messages = (_vala_array_free (self->priv->messages, self->priv->messages_length1, (GDestroyNotify) g_free), NULL);
+ G_OBJECT_CLASS (test_parent_class)->finalize (obj);
+}
+
+static GType
+test_get_type_once (void)
+{
+ static const GTypeInfo g_define_type_info = { sizeof (TestClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) test_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Test), 0, (GInstanceInitFunc) test_instance_init, NULL };
+ GType test_type_id;
+ test_type_id = g_type_register_static (G_TYPE_OBJECT, "Test", &g_define_type_info, 0);
+ g_type_set_qdata (test_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) test_register_object);
+ Test_private_offset = g_type_add_instance_private (test_type_id, sizeof (TestPrivate));
+ return test_type_id;
+}
+
+GType
+test_get_type (void)
+{
+ static volatile gsize test_type_id__volatile = 0;
+ if (g_once_init_enter (&test_type_id__volatile)) {
+ GType test_type_id;
+ test_type_id = test_get_type_once ();
+ g_once_init_leave (&test_type_id__volatile, test_type_id);
+ }
+ return test_type_id__volatile;
+}
+
+static void
+_dbus_test_list_messages (Test* self,
+ GVariant* _parameters_,
+ GDBusMethodInvocation* invocation)
+{
+ GVariantIter _arguments_iter;
+ TestListMessagesReadyData* _ready_data;
+ g_variant_iter_init (&_arguments_iter, _parameters_);
+ _ready_data = g_slice_new0 (TestListMessagesReadyData);
+ _ready_data->_invocation_ = invocation;
+ test_list_messages (self, (GAsyncReadyCallback) _dbus_test_list_messages_ready, _ready_data);
+}
+
+static void
+_dbus_test_list_messages_ready (GObject * source_object,
+ GAsyncResult * _res_,
+ gpointer _user_data_)
+{
+ TestListMessagesReadyData* _ready_data;
+ GDBusMethodInvocation* invocation;
+ GError* error = NULL;
+ GDBusMessage* _reply_message = NULL;
+ GVariant* _reply;
+ GVariantBuilder _reply_builder;
+ gchar** result;
+ gint result_length1 = 0;
+ gchar** _tmp0_;
+ GVariantBuilder _tmp1_;
+ gint _tmp2_;
+ _ready_data = _user_data_;
+ invocation = _ready_data->_invocation_;
+ result = test_list_messages_finish ((Test*) source_object, _res_, &result_length1);
+ _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+ g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+ _tmp0_ = result;
+ g_variant_builder_init (&_tmp1_, G_VARIANT_TYPE ("as"));
+ for (_tmp2_ = 0; _tmp2_ < result_length1; _tmp2_++) {
+ g_variant_builder_add_value (&_tmp1_, g_variant_new_string (*_tmp0_));
+ _tmp0_++;
+ }
+ g_variant_builder_add_value (&_reply_builder, g_variant_builder_end (&_tmp1_));
+ result = (_vala_array_free (result, result_length1, (GDestroyNotify) g_free), NULL);
+ _reply = g_variant_builder_end (&_reply_builder);
+ g_dbus_message_set_body (_reply_message, _reply);
+ g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+ g_object_unref (invocation);
+ g_object_unref (_reply_message);
+ _error:
+ g_slice_free (TestListMessagesReadyData, _ready_data);
+}
+
+static void
+_dbus_test_post_message (Test* self,
+ GVariant* _parameters_,
+ GDBusMethodInvocation* invocation)
+{
+ GVariantIter _arguments_iter;
+ TestPostMessageReadyData* _ready_data;
+ GVariant* _tmp3_;
+ g_variant_iter_init (&_arguments_iter, _parameters_);
+ _ready_data = g_slice_new0 (TestPostMessageReadyData);
+ _ready_data->_invocation_ = invocation;
+ _tmp3_ = g_variant_iter_next_value (&_arguments_iter);
+ _ready_data->message = g_variant_dup_string (_tmp3_, NULL);
+ g_variant_unref (_tmp3_);
+ test_post_message (self, _ready_data->message, (GAsyncReadyCallback) _dbus_test_post_message_ready, _ready_data);
+}
+
+static void
+_dbus_test_post_message_ready (GObject * source_object,
+ GAsyncResult * _res_,
+ gpointer _user_data_)
+{
+ TestPostMessageReadyData* _ready_data;
+ GDBusMethodInvocation* invocation;
+ GError* error = NULL;
+ GDBusMessage* _reply_message = NULL;
+ GVariant* _reply;
+ GVariantBuilder _reply_builder;
+ _ready_data = _user_data_;
+ invocation = _ready_data->_invocation_;
+ test_post_message_finish ((Test*) source_object, _res_);
+ _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+ g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+ _reply = g_variant_builder_end (&_reply_builder);
+ g_dbus_message_set_body (_reply_message, _reply);
+ g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+ g_object_unref (invocation);
+ g_object_unref (_reply_message);
+ _error:
+ _g_free0 (_ready_data->message);
+ g_slice_free (TestPostMessageReadyData, _ready_data);
+}
+
+static void
+test_dbus_interface_method_call (GDBusConnection* connection,
+ const gchar* sender,
+ const gchar* object_path,
+ const gchar* interface_name,
+ const gchar* method_name,
+ GVariant* parameters,
+ GDBusMethodInvocation* invocation,
+ gpointer user_data)
+{
+ gpointer* data;
+ gpointer object;
+ data = user_data;
+ object = data[0];
+ if (strcmp (method_name, "ListMessages") == 0) {
+ _dbus_test_list_messages (object, parameters, invocation);
+ } else if (strcmp (method_name, "PostMessage") == 0) {
+ _dbus_test_post_message (object, parameters, invocation);
+ } else {
+ g_object_unref (invocation);
+ }
+}
+
+static GVariant*
+test_dbus_interface_get_property (GDBusConnection* connection,
+ const gchar* sender,
+ const gchar* object_path,
+ const gchar* interface_name,
+ const gchar* property_name,
+ GError** error,
+ gpointer user_data)
+{
+ gpointer* data;
+ gpointer object;
+ data = user_data;
+ object = data[0];
+ return NULL;
+}
+
+static gboolean
+test_dbus_interface_set_property (GDBusConnection* connection,
+ const gchar* sender,
+ const gchar* object_path,
+ const gchar* interface_name,
+ const gchar* property_name,
+ GVariant* value,
+ GError** error,
+ gpointer user_data)
+{
+ gpointer* data;
+ gpointer object;
+ data = user_data;
+ object = data[0];
+ return FALSE;
+}
+
+guint
+test_register_object (gpointer object,
+ GDBusConnection* connection,
+ const gchar* path,
+ GError** error)
+{
+ guint result;
+ gpointer *data;
+ data = g_new (gpointer, 3);
+ data[0] = g_object_ref (object);
+ data[1] = g_object_ref (connection);
+ data[2] = g_strdup (path);
+ result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_test_dbus_interface_info), &_test_dbus_interface_vtable, data, _test_unregister_object, error);
+ if (!result) {
+ return 0;
+ }
+ return result;
+}
+
+static void
+_test_unregister_object (gpointer user_data)
+{
+ gpointer* data;
+ data = user_data;
+ g_object_unref (data[0]);
+ g_object_unref (data[1]);
+ g_free (data[2]);
+ g_free (data);
+}
+
+void
+client_exit (GPid pid,
+ gint status)
+{
+ GMainLoop* _tmp0_;
+ _vala_assert (status == 0, "status == 0");
+ _tmp0_ = main_loop;
+ g_main_loop_quit (_tmp0_);
+}
+
+static guint
+_variant_get1 (GVariant* value)
+{
+ return g_variant_get_uint32 (value);
+}
+
+static void
+_client_exit_gchild_watch_func (GPid pid,
+ gint wait_status,
+ gpointer self)
+{
+ client_exit (pid, wait_status);
+}
+
+static void
+_vala_main (void)
+{
+ GDBusConnection* conn = NULL;
+ GDBusConnection* _tmp0_;
+ GDBusConnection* _tmp1_;
+ Test* _tmp2_;
+ Test* _tmp3_;
+ GVariant* request_result = NULL;
+ GDBusConnection* _tmp4_;
+ GVariant* _tmp5_;
+ GVariant* _tmp6_;
+ GVariant* _tmp7_;
+ GVariant* _tmp8_;
+ GVariant* _tmp9_;
+ GVariant* _tmp10_;
+ GVariant* _tmp11_;
+ guint _tmp12_;
+ GPid client_pid = 0;
+ gchar* _tmp13_;
+ gchar** _tmp14_;
+ gchar** _tmp15_;
+ gint _tmp15__length1;
+ GPid _tmp16_ = 0;
+ GMainLoop* _tmp17_;
+ GMainLoop* _tmp18_;
+ GError* _inner_error0_ = NULL;
+ _tmp0_ = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &_inner_error0_);
+ conn = _tmp0_;
+ if (G_UNLIKELY (_inner_error0_ != NULL)) {
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
+ g_clear_error (&_inner_error0_);
+ return;
+ }
+ _tmp1_ = conn;
+ _tmp2_ = test_new ();
+ _tmp3_ = _tmp2_;
+ test_register_object (_tmp3_, _tmp1_, "/org/example/Test", &_inner_error0_);
+ _g_object_unref0 (_tmp3_);
+ if (G_UNLIKELY (_inner_error0_ != NULL)) {
+ _g_object_unref0 (conn);
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
+ g_clear_error (&_inner_error0_);
+ return;
+ }
+ _tmp4_ = conn;
+ _tmp5_ = g_variant_new ("(su)", "org.example.Test", 0x4, NULL);
+ g_variant_ref_sink (_tmp5_);
+ _tmp6_ = _tmp5_;
+ _tmp7_ = g_dbus_connection_call_sync (_tmp4_, "org.freedesktop.DBus", "/org/freedesktop/DBus", "org.freedesktop.DBus", "RequestName", _tmp6_, NULL, 0, -1, NULL, &_inner_error0_);
+ _tmp8_ = _tmp7_;
+ _g_variant_unref0 (_tmp6_);
+ request_result = _tmp8_;
+ if (G_UNLIKELY (_inner_error0_ != NULL)) {
+ _g_object_unref0 (conn);
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
+ g_clear_error (&_inner_error0_);
+ return;
+ }
+ _tmp9_ = request_result;
+ _tmp10_ = g_variant_get_child_value (_tmp9_, (gsize) 0);
+ _tmp11_ = _tmp10_;
+ _tmp12_ = _variant_get1 (_tmp11_);
+ _vala_assert (_tmp12_ == ((guint) 1), "(uint) request_result.get_child_value (0) == 1");
+ _g_variant_unref0 (_tmp11_);
+ _tmp13_ = g_strdup ("dbus_async_no_reply_client");
+ _tmp14_ = g_new0 (gchar*, 1 + 1);
+ _tmp14_[0] = _tmp13_;
+ _tmp15_ = _tmp14_;
+ _tmp15__length1 = 1;
+ g_spawn_async (NULL, _tmp15_, NULL, G_SPAWN_DO_NOT_REAP_CHILD, NULL, NULL, &_tmp16_, &_inner_error0_);
+ client_pid = _tmp16_;
+ _tmp15_ = (_vala_array_free (_tmp15_, _tmp15__length1, (GDestroyNotify) g_free), NULL);
+ if (G_UNLIKELY (_inner_error0_ != NULL)) {
+ _g_variant_unref0 (request_result);
+ _g_object_unref0 (conn);
+ g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
+ g_clear_error (&_inner_error0_);
+ return;
+ }
+ g_child_watch_add_full (G_PRIORITY_DEFAULT_IDLE, client_pid, _client_exit_gchild_watch_func, NULL, NULL);
+ _tmp17_ = g_main_loop_new (NULL, FALSE);
+ _g_main_loop_unref0 (main_loop);
+ main_loop = _tmp17_;
+ _tmp18_ = main_loop;
+ g_main_loop_run (_tmp18_);
+ _g_variant_unref0 (request_result);
+ _g_object_unref0 (conn);
+}
+
+int
+main (int argc,
+ char ** argv)
+{
+ _vala_main ();
+ return 0;
+}
+
+static void
+_vala_array_destroy (gpointer array,
+ gssize array_length,
+ GDestroyNotify destroy_func)
+{
+ if ((array != NULL) && (destroy_func != NULL)) {
+ gssize i;
+ for (i = 0; i < array_length; i = i + 1) {
+ if (((gpointer*) array)[i] != NULL) {
+ destroy_func (((gpointer*) array)[i]);
+ }
+ }
+ }
+}
+
+static void
+_vala_array_free (gpointer array,
+ gssize array_length,
+ GDestroyNotify destroy_func)
+{
+ _vala_array_destroy (array, array_length, destroy_func);
+ g_free (array);
+}
+