/* dbus_errors_client.c generated by valac, the Vala compiler * generated from dbus_errors_client.vala, do not modify */ #include #include #include #include #include #if !defined(VALA_EXTERN) #if defined(_WIN32) || defined(__CYGWIN__) #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_ERROR (test_error_get_type ()) #define TYPE_TEST (test_get_type ()) #define TEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TEST, Test)) #define IS_TEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TEST)) #define TEST_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_TEST, TestIface)) typedef struct _Test Test; typedef struct _TestIface TestIface; #define TYPE_TEST_PROXY (test_proxy_get_type ()) typedef GDBusProxy TestProxy; typedef GDBusProxyClass TestProxyClass; #define _g_free0(var) (var = (g_free (var), NULL)) #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) #define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (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); typedef enum { TEST_ERROR_NOT_SO_GOOD, TEST_ERROR_BAD, TEST_ERROR_WORSE } TestError; #define TEST_ERROR test_error_quark () struct _TestIface { GTypeInterface parent_iface; void (*test_void) (Test* self, GError** error); gint (*test_int) (Test* self, gint i, gint* j, GError** error); gchar* (*test_string) (Test* self, const gchar* s, gchar** t, GError** error); void (*test_cancellable) (Test* self, GCancellable* cancellable, GError** error); void (*test_custom_error) (Test* self, GError** error); }; VALA_EXTERN GQuark test_error_quark (void); GType test_error_get_type (void) G_GNUC_CONST ; VALA_EXTERN GType test_proxy_get_type (void) G_GNUC_CONST ; VALA_EXTERN guint test_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error); VALA_EXTERN GType test_get_type (void) G_GNUC_CONST ; G_DEFINE_AUTOPTR_CLEANUP_FUNC (Test, g_object_unref) VALA_EXTERN void test_test_void (Test* self, GError** error); VALA_EXTERN gint test_test_int (Test* self, gint i, gint* j, GError** error); VALA_EXTERN gchar* test_test_string (Test* self, const gchar* s, gchar** t, GError** error); VALA_EXTERN void test_test_cancellable (Test* self, GCancellable* cancellable, GError** error); VALA_EXTERN void test_test_custom_error (Test* self, GError** error); static GType test_get_type_once (void); static void test_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters); static void test_proxy_test_void (Test* self, GError** error); static gint test_proxy_test_int (Test* self, gint i, gint* j, GError** error); static gchar* test_proxy_test_string (Test* self, const gchar* s, gchar** t, GError** error); static void test_proxy_test_cancellable (Test* self, GCancellable* cancellable, GError** error); static void test_proxy_test_custom_error (Test* self, GError** error); static void test_proxy_test_interface_init (TestIface* iface); static void _dbus_test_test_void (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation); static void _dbus_test_test_int (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation); static void _dbus_test_test_string (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation); static void _dbus_test_test_cancellable (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation); static void _dbus_test_test_custom_error (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation); 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); static void _vala_main (void); static const GDBusErrorEntry test_error_entries[] = {{TEST_ERROR_NOT_SO_GOOD, "org.example.TestError.NotSoGood"}, {TEST_ERROR_BAD, "org.example.TestError.Bad"}, {TEST_ERROR_WORSE, "org.example.TestError.Worse"}}; static const GDBusArgInfo * const _test_dbus_arg_info_test_void_in[] = {NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_void_out[] = {NULL}; static const GDBusMethodInfo _test_dbus_method_info_test_void = {-1, "TestVoid", (GDBusArgInfo **) (&_test_dbus_arg_info_test_void_in), (GDBusArgInfo **) (&_test_dbus_arg_info_test_void_out), NULL}; static const GDBusArgInfo _test_dbus_arg_info_test_int_i = {-1, "i", "i", NULL}; static const GDBusArgInfo _test_dbus_arg_info_test_int_j = {-1, "j", "i", NULL}; static const GDBusArgInfo _test_dbus_arg_info_test_int_result = {-1, "result", "i", NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_int_in[] = {&_test_dbus_arg_info_test_int_i, NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_int_out[] = {&_test_dbus_arg_info_test_int_j, &_test_dbus_arg_info_test_int_result, NULL}; static const GDBusMethodInfo _test_dbus_method_info_test_int = {-1, "TestInt", (GDBusArgInfo **) (&_test_dbus_arg_info_test_int_in), (GDBusArgInfo **) (&_test_dbus_arg_info_test_int_out), NULL}; static const GDBusArgInfo _test_dbus_arg_info_test_string_s = {-1, "s", "s", NULL}; static const GDBusArgInfo _test_dbus_arg_info_test_string_t = {-1, "t", "s", NULL}; static const GDBusArgInfo _test_dbus_arg_info_test_string_result = {-1, "result", "s", NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_string_in[] = {&_test_dbus_arg_info_test_string_s, NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_string_out[] = {&_test_dbus_arg_info_test_string_t, &_test_dbus_arg_info_test_string_result, NULL}; static const GDBusMethodInfo _test_dbus_method_info_test_string = {-1, "TestString", (GDBusArgInfo **) (&_test_dbus_arg_info_test_string_in), (GDBusArgInfo **) (&_test_dbus_arg_info_test_string_out), NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_cancellable_in[] = {NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_cancellable_out[] = {NULL}; static const GDBusMethodInfo _test_dbus_method_info_test_cancellable = {-1, "TestCancellable", (GDBusArgInfo **) (&_test_dbus_arg_info_test_cancellable_in), (GDBusArgInfo **) (&_test_dbus_arg_info_test_cancellable_out), NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_custom_error_in[] = {NULL}; static const GDBusArgInfo * const _test_dbus_arg_info_test_custom_error_out[] = {NULL}; static const GDBusMethodInfo _test_dbus_method_info_test_custom_error = {-1, "TestCustomError", (GDBusArgInfo **) (&_test_dbus_arg_info_test_custom_error_in), (GDBusArgInfo **) (&_test_dbus_arg_info_test_custom_error_out), NULL}; static const GDBusMethodInfo * const _test_dbus_method_info[] = {&_test_dbus_method_info_test_void, &_test_dbus_method_info_test_int, &_test_dbus_method_info_test_string, &_test_dbus_method_info_test_cancellable, &_test_dbus_method_info_test_custom_error, 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}; GQuark test_error_quark (void) { static volatile gsize test_error_quark_volatile = 0; g_dbus_error_register_error_domain ("test-error-quark", &test_error_quark_volatile, test_error_entries, G_N_ELEMENTS (test_error_entries)); return (GQuark) test_error_quark_volatile; } void test_test_void (Test* self, GError** error) { TestIface* _iface_; g_return_if_fail (IS_TEST (self)); _iface_ = TEST_GET_INTERFACE (self); if (_iface_->test_void) { _iface_->test_void (self, error); } } gint test_test_int (Test* self, gint i, gint* j, GError** error) { TestIface* _iface_; g_return_val_if_fail (IS_TEST (self), 0); _iface_ = TEST_GET_INTERFACE (self); if (_iface_->test_int) { return _iface_->test_int (self, i, j, error); } return -1; } gchar* test_test_string (Test* self, const gchar* s, gchar** t, GError** error) { TestIface* _iface_; g_return_val_if_fail (IS_TEST (self), NULL); _iface_ = TEST_GET_INTERFACE (self); if (_iface_->test_string) { return _iface_->test_string (self, s, t, error); } return NULL; } void test_test_cancellable (Test* self, GCancellable* cancellable, GError** error) { TestIface* _iface_; g_return_if_fail (IS_TEST (self)); _iface_ = TEST_GET_INTERFACE (self); if (_iface_->test_cancellable) { _iface_->test_cancellable (self, cancellable, error); } } void test_test_custom_error (Test* self, GError** error) { TestIface* _iface_; g_return_if_fail (IS_TEST (self)); _iface_ = TEST_GET_INTERFACE (self); if (_iface_->test_custom_error) { _iface_->test_custom_error (self, error); } } static void test_default_init (TestIface * iface, gpointer iface_data) { } static GType test_get_type_once (void) { static const GTypeInfo g_define_type_info = { sizeof (TestIface), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) test_default_init, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL }; GType test_type_id; test_type_id = g_type_register_static (G_TYPE_INTERFACE, "Test", &g_define_type_info, 0); g_type_interface_add_prerequisite (test_type_id, G_TYPE_OBJECT); g_type_set_qdata (test_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) test_proxy_get_type); g_type_set_qdata (test_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.example.Test"); g_type_set_qdata (test_type_id, g_quark_from_static_string ("vala-dbus-interface-info"), (void*) (&_test_dbus_interface_info)); g_type_set_qdata (test_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) test_register_object); return test_type_id; } GType test_get_type (void) { static volatile gsize test_type_id__once = 0; if (g_once_init_enter (&test_type_id__once)) { GType test_type_id; test_type_id = test_get_type_once (); g_once_init_leave (&test_type_id__once, test_type_id); } return test_type_id__once; } G_DEFINE_TYPE_EXTENDED (TestProxy, test_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (TYPE_TEST, test_proxy_test_interface_init) ) static void test_proxy_class_init (TestProxyClass* klass) { G_DBUS_PROXY_CLASS (klass)->g_signal = test_proxy_g_signal; } static void test_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters) { } static void test_proxy_init (TestProxy* self) { g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_test_dbus_interface_info)); } static void test_proxy_test_void (Test* self, GError** error) { GDBusMessage *_message; GVariant *_arguments; GVariantBuilder _arguments_builder; GDBusMessage *_reply_message; _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.example.Test", "TestVoid"); g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE); _arguments = g_variant_builder_end (&_arguments_builder); g_dbus_message_set_body (_message, _arguments); _reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error); g_object_unref (_message); if (!_reply_message) { return; } if (g_dbus_message_to_gerror (_reply_message, error)) { g_object_unref (_reply_message); return; } g_object_unref (_reply_message); } static gint test_proxy_test_int (Test* self, gint i, gint* j, GError** error) { GDBusMessage *_message; GVariant *_arguments; GVariantBuilder _arguments_builder; GDBusMessage *_reply_message; GVariant *_reply; GVariantIter _reply_iter; gint _vala_j = 0; GVariant* _tmp2_; gint _result = 0; GVariant* _tmp3_; _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.example.Test", "TestInt"); g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE); g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (i)); _arguments = g_variant_builder_end (&_arguments_builder); g_dbus_message_set_body (_message, _arguments); _reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error); g_object_unref (_message); if (!_reply_message) { gint _tmp0_ = 0; return _tmp0_; } if (g_dbus_message_to_gerror (_reply_message, error)) { gint _tmp1_ = 0; g_object_unref (_reply_message); return _tmp1_; } _reply = g_dbus_message_get_body (_reply_message); g_variant_iter_init (&_reply_iter, _reply); _tmp2_ = g_variant_iter_next_value (&_reply_iter); _vala_j = g_variant_get_int32 (_tmp2_); g_variant_unref (_tmp2_); *j = _vala_j; _tmp3_ = g_variant_iter_next_value (&_reply_iter); _result = g_variant_get_int32 (_tmp3_); g_variant_unref (_tmp3_); g_object_unref (_reply_message); return _result; } static gchar* test_proxy_test_string (Test* self, const gchar* s, gchar** t, GError** error) { GDBusMessage *_message; GVariant *_arguments; GVariantBuilder _arguments_builder; GDBusMessage *_reply_message; GVariant *_reply; GVariantIter _reply_iter; gchar* _vala_t = NULL; GVariant* _tmp4_; gchar* _result = NULL; GVariant* _tmp5_; _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.example.Test", "TestString"); g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE); g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (s)); _arguments = g_variant_builder_end (&_arguments_builder); g_dbus_message_set_body (_message, _arguments); _reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error); g_object_unref (_message); if (!_reply_message) { return NULL; } if (g_dbus_message_to_gerror (_reply_message, error)) { g_object_unref (_reply_message); return NULL; } _reply = g_dbus_message_get_body (_reply_message); g_variant_iter_init (&_reply_iter, _reply); _tmp4_ = g_variant_iter_next_value (&_reply_iter); _vala_t = g_variant_dup_string (_tmp4_, NULL); g_variant_unref (_tmp4_); *t = _vala_t; _tmp5_ = g_variant_iter_next_value (&_reply_iter); _result = g_variant_dup_string (_tmp5_, NULL); g_variant_unref (_tmp5_); g_object_unref (_reply_message); return _result; } static void test_proxy_test_cancellable (Test* self, GCancellable* cancellable, GError** error) { GDBusMessage *_message; GVariant *_arguments; GVariantBuilder _arguments_builder; GDBusMessage *_reply_message; _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.example.Test", "TestCancellable"); g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE); _arguments = g_variant_builder_end (&_arguments_builder); g_dbus_message_set_body (_message, _arguments); _reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, cancellable, error); g_object_unref (_message); if (!_reply_message) { return; } if (g_dbus_message_to_gerror (_reply_message, error)) { g_object_unref (_reply_message); return; } g_object_unref (_reply_message); } static void test_proxy_test_custom_error (Test* self, GError** error) { GDBusMessage *_message; GVariant *_arguments; GVariantBuilder _arguments_builder; GDBusMessage *_reply_message; TEST_ERROR; _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.example.Test", "TestCustomError"); g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE); _arguments = g_variant_builder_end (&_arguments_builder); g_dbus_message_set_body (_message, _arguments); _reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error); g_object_unref (_message); if (!_reply_message) { return; } if (g_dbus_message_to_gerror (_reply_message, error)) { g_object_unref (_reply_message); return; } g_object_unref (_reply_message); } static void test_proxy_test_interface_init (TestIface* iface) { iface->test_void = test_proxy_test_void; iface->test_int = test_proxy_test_int; iface->test_string = test_proxy_test_string; iface->test_cancellable = test_proxy_test_cancellable; iface->test_custom_error = test_proxy_test_custom_error; } static void _dbus_test_test_void (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) { GError* error = NULL; GVariantIter _arguments_iter; GDBusMessage* _reply_message = NULL; GVariant* _reply; GVariantBuilder _reply_builder; g_variant_iter_init (&_arguments_iter, _parameters_); test_test_void (self, &error); if (error) { g_dbus_method_invocation_take_error (invocation, error); return; } _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); } static void _dbus_test_test_int (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) { GError* error = NULL; GVariantIter _arguments_iter; gint i = 0; GVariant* _tmp6_; GDBusMessage* _reply_message = NULL; GVariant* _reply; GVariantBuilder _reply_builder; gint j = 0; gint result; g_variant_iter_init (&_arguments_iter, _parameters_); _tmp6_ = g_variant_iter_next_value (&_arguments_iter); i = g_variant_get_int32 (_tmp6_); g_variant_unref (_tmp6_); result = test_test_int (self, i, &j, &error); if (error) { g_dbus_method_invocation_take_error (invocation, error); return; } _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); g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (j)); g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (result)); _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); } static void _dbus_test_test_string (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) { GError* error = NULL; GVariantIter _arguments_iter; gchar* s = NULL; GVariant* _tmp7_; GDBusMessage* _reply_message = NULL; GVariant* _reply; GVariantBuilder _reply_builder; gchar* t = NULL; gchar* result; g_variant_iter_init (&_arguments_iter, _parameters_); _tmp7_ = g_variant_iter_next_value (&_arguments_iter); s = g_variant_dup_string (_tmp7_, NULL); g_variant_unref (_tmp7_); result = test_test_string (self, s, &t, &error); if (error) { g_dbus_method_invocation_take_error (invocation, error); goto _error; } _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); g_variant_builder_add_value (&_reply_builder, g_variant_new_string (t)); g_variant_builder_add_value (&_reply_builder, g_variant_new_string (result)); _g_free0 (result); _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 (s); _g_free0 (t); ; } static void _dbus_test_test_cancellable (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) { GError* error = NULL; GVariantIter _arguments_iter; GDBusMessage* _reply_message = NULL; GVariant* _reply; GVariantBuilder _reply_builder; g_variant_iter_init (&_arguments_iter, _parameters_); test_test_cancellable (self, NULL, &error); if (error) { g_dbus_method_invocation_take_error (invocation, error); return; } _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); } static void _dbus_test_test_custom_error (Test* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) { GError* error = NULL; GVariantIter _arguments_iter; GDBusMessage* _reply_message = NULL; GVariant* _reply; GVariantBuilder _reply_builder; g_variant_iter_init (&_arguments_iter, _parameters_); test_test_custom_error (self, &error); if (error) { g_dbus_method_invocation_take_error (invocation, error); return; } _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); } 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, "TestVoid") == 0) { _dbus_test_test_void (object, parameters, invocation); } else if (strcmp (method_name, "TestInt") == 0) { _dbus_test_test_int (object, parameters, invocation); } else if (strcmp (method_name, "TestString") == 0) { _dbus_test_test_string (object, parameters, invocation); } else if (strcmp (method_name, "TestCancellable") == 0) { _dbus_test_test_cancellable (object, parameters, invocation); } else if (strcmp (method_name, "TestCustomError") == 0) { _dbus_test_test_custom_error (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); } static void _vala_main (void) { Test* test = NULL; Test* _tmp0_; GError* _inner_error0_ = NULL; _tmp0_ = (Test*) g_initable_new (TYPE_TEST_PROXY, NULL, &_inner_error0_, "g-flags", 0, "g-name", "org.example.Test", "g-bus-type", G_BUS_TYPE_SESSION, "g-object-path", "/org/example/test", "g-interface-name", "org.example.Test", NULL); test = (Test*) _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; } { test_test_void (test, &_inner_error0_); if (G_UNLIKELY (_inner_error0_ != NULL)) { goto __catch0_g_error; } g_assert_not_reached (); } goto __finally0; __catch0_g_error: { g_clear_error (&_inner_error0_); } __finally0: if (G_UNLIKELY (_inner_error0_ != NULL)) { _g_object_unref0 (test); 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; } { gint j = 0; gint k = 0; gint _tmp1_ = 0; gint _tmp2_ = 0; gint _tmp3_; _tmp3_ = test_test_int (test, 42, &_tmp2_, &_inner_error0_); j = _tmp2_; _tmp1_ = _tmp3_; if (G_UNLIKELY (_inner_error0_ != NULL)) { goto __catch1_g_error; } k = _tmp1_; g_assert_not_reached (); } goto __finally1; __catch1_g_error: { g_clear_error (&_inner_error0_); } __finally1: if (G_UNLIKELY (_inner_error0_ != NULL)) { _g_object_unref0 (test); 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; } { gchar* t = NULL; gchar* u = NULL; gchar* _tmp4_ = NULL; gchar* _tmp5_ = NULL; gchar* _tmp6_; gchar* _tmp7_; const gchar* _tmp8_; _tmp6_ = test_test_string (test, "hello", &_tmp5_, &_inner_error0_); _g_free0 (t); t = _tmp5_; _tmp4_ = _tmp6_; if (G_UNLIKELY (_inner_error0_ != NULL)) { _g_free0 (u); _g_free0 (t); goto __catch2_g_error; } _tmp7_ = _tmp4_; _tmp4_ = NULL; _g_free0 (u); u = _tmp7_; _tmp8_ = t; _vala_assert (g_strcmp0 (_tmp8_, "world") == 0, "t == \"world\""); _vala_assert (g_strcmp0 (u, "vala") == 0, "u == \"vala\""); g_assert_not_reached (); _g_free0 (_tmp4_); _g_free0 (u); _g_free0 (t); } goto __finally2; __catch2_g_error: { g_clear_error (&_inner_error0_); } __finally2: if (G_UNLIKELY (_inner_error0_ != NULL)) { _g_object_unref0 (test); 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; } { GCancellable* cancellable = NULL; GCancellable* _tmp9_; GCancellable* _tmp10_; GCancellable* _tmp11_; _tmp9_ = g_cancellable_new (); cancellable = _tmp9_; _tmp10_ = cancellable; g_cancellable_cancel (_tmp10_); _tmp11_ = cancellable; test_test_cancellable (test, _tmp11_, &_inner_error0_); if (G_UNLIKELY (_inner_error0_ != NULL)) { _g_object_unref0 (cancellable); goto __catch3_g_error; } g_assert_not_reached (); _g_object_unref0 (cancellable); } goto __finally3; __catch3_g_error: { g_clear_error (&_inner_error0_); } __finally3: if (G_UNLIKELY (_inner_error0_ != NULL)) { _g_object_unref0 (test); 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; } { test_test_custom_error (test, &_inner_error0_); if (G_UNLIKELY (_inner_error0_ != NULL)) { if (_inner_error0_->domain == TEST_ERROR) { goto __catch4_test_error; } goto __catch4_g_error; } g_assert_not_reached (); } goto __finally4; __catch4_test_error: { GError* e = NULL; GError* _tmp12_; GError* _tmp13_; const gchar* _tmp14_; e = _inner_error0_; _inner_error0_ = NULL; _tmp12_ = e; _vala_assert (g_error_matches (_tmp12_, TEST_ERROR, TEST_ERROR_BAD), "e is TestError.BAD"); _tmp13_ = e; _tmp14_ = _tmp13_->message; _vala_assert (g_strcmp0 (_tmp14_, "GDBus.Error:org.example.TestError.Bad: Something failed badly") == 0, "e.message == \"GDBus.Error:org.example.TestError.Bad: Something failed badly\""); _g_error_free0 (e); } goto __finally4; __catch4_g_error: { g_clear_error (&_inner_error0_); g_assert_not_reached (); } __finally4: if (G_UNLIKELY (_inner_error0_ != NULL)) { _g_object_unref0 (test); 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_object_unref0 (test); } int main (int argc, char ** argv) { _vala_main (); return 0; }