]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
gdbus: Reimplement method calls using g_dbus_proxy_call
authorSergey Bugaev <bugaevc@gmail.com>
Sun, 8 Mar 2026 10:09:58 +0000 (13:09 +0300)
committerRico Tzschichholz <ricotz@ubuntu.com>
Sat, 16 May 2026 11:28:48 +0000 (13:28 +0200)
This essentially undoes commit 28fdeeb23dffc8555bc844d225c6e08e2aef95bd
"D-Bus: Use lowlevel message API for method calls in GDBus clients",
whose commit message mentions that this was required for file descriptor
passing. Indeed in 2010, there was no *_with_unix_fd_list methods on
GDBusProxy; those are new in GLib 2.30 (2011). We require GLib 2.56, so
we can rely on those methods being present. This commit implements both
fd-passing an regular D-Bus methods on top of the various variants of
g_dbus_proxy_call methods.

In addition to both the generated code being simpler, this brings the
important functionality of type-checking the reply message.

33 files changed:
codegen/valagdbusclientmodule.vala
codegen/valagdbusmodule.vala
codegen/valagdbusservermodule.vala
tests/dbus/arrays_client.c-expected
tests/dbus/async-bus_client.c-expected
tests/dbus/async-connection_client.c-expected
tests/dbus/async-errors_client.c-expected
tests/dbus/async-no-reply_client.c-expected
tests/dbus/async_client.c-expected
tests/dbus/basic-types_client.c-expected
tests/dbus/bug602003_client.c-expected
tests/dbus/bug735437_client.c-expected
tests/dbus/bug782719_client.c-expected
tests/dbus/bug783002_client.c-expected
tests/dbus/bug792277.c-expected
tests/dbus/connection_client.c-expected
tests/dbus/dicts_client.c-expected
tests/dbus/dicts_server.c-expected
tests/dbus/dynamic-method_client.c-expected
tests/dbus/enum-string-marshalling.c-expected
tests/dbus/errors_client.c-expected
tests/dbus/filedescriptor-async_client.c-expected
tests/dbus/filedescriptor-async_server.c-expected
tests/dbus/filedescriptor-errors_client.c-expected
tests/dbus/filedescriptor-errors_server.c-expected
tests/dbus/filedescriptor_client.c-expected
tests/dbus/filedescriptor_server.c-expected
tests/dbus/generics_client.c-expected
tests/dbus/no-reply_client.c-expected
tests/dbus/property-access_client.c-expected
tests/dbus/rawvariants_client.c-expected
tests/dbus/signals_client.c-expected
tests/dbus/structs_client.c-expected

index 11ec7c5c5e40e283c16ff0e8642ddfd7cd35cb4f..7f639a1c515d159dde48add16af08bbadf7dbd99 100644 (file)
@@ -558,13 +558,17 @@ public class Vala.GDBusClientModule : GDBusModule {
        void generate_marshalling (Method m, CallType call_type, string? iface_name, string? method_name, int method_timeout) {
                var gdbusproxy = new CCodeCastExpression (new CCodeIdentifier ("self"), "GDBusProxy *");
 
-               var connection = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_proxy_get_connection"));
-               connection.add_argument (gdbusproxy);
-
                bool uses_fd = dbus_method_uses_file_descriptor (m);
                if (uses_fd) {
                        cfile.add_include ("gio/gunixfdlist.h");
                        ccode.add_declaration ("GUnixFDList*", new CCodeVariableDeclarator ("_fd_list"));
+                       if (call_type == CallType.SYNC || call_type == CallType.FINISH) {
+                               ccode.add_declaration ("GUnixFDList*", new CCodeVariableDeclarator ("_out_fd_list"));
+                       }
+               }
+
+               if (call_type == CallType.SYNC || call_type == CallType.FINISH) {
+                       ccode.add_declaration ("GVariant", new CCodeVariableDeclarator ("*_reply"));
                }
 
                bool has_error_argument = m.tree_can_fail;
@@ -575,50 +579,27 @@ public class Vala.GDBusClientModule : GDBusModule {
                        error_argument = new CCodeConstant ("NULL");
                }
 
-               if (call_type != CallType.FINISH) {
-                       var destination = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_proxy_get_name"));
-                       destination.add_argument (gdbusproxy);
-
-                       var interface_name = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_proxy_get_interface_name"));
-                       interface_name.add_argument (gdbusproxy);
-
-                       var object_path = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_proxy_get_object_path"));
-                       object_path.add_argument (gdbusproxy);
-
-                       CCodeExpression timeout;
-                       if (method_timeout <= 0) {
-                               timeout = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_proxy_get_default_timeout"));
-                               ((CCodeFunctionCall) timeout).add_argument (gdbusproxy);
-                       } else {
-                               timeout = new CCodeConstant ("%d".printf (method_timeout));
-                       }
+               CCodeFunctionCall ccall = new CCodeFunctionCall ();
+               ccall.add_argument (gdbusproxy);
 
+               if (call_type != CallType.FINISH) {
                        // register errors
                        var error_types = new ArrayList<DataType> ();
                        m.get_error_types (error_types);
                        foreach (var error_type in error_types) {
                                var errtype = (ErrorType) error_type;
                                if (errtype.error_domain != null) {
+                                       var domain_name = errtype.error_domain.get_full_name ();
+                                       if (domain_name == "GLib.IOError" || domain_name == "GLib.DBusError") {
+                                               // Don't bother.
+                                               continue;
+                                       }
                                        ccode.add_expression (new CCodeIdentifier (get_ccode_upper_case_name (errtype.error_domain)));
                                }
                        }
 
-                       // build D-Bus message
-
-                       ccode.add_declaration ("GDBusMessage", new CCodeVariableDeclarator ("*_message"));
-
-                       var ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_new_method_call"));
-                       ccall.add_argument (destination);
-                       ccall.add_argument (object_path);
-                       if (iface_name != null) {
-                               ccall.add_argument (new CCodeConstant ("\"%s\"".printf (iface_name)));
-                       } else {
-                               ccall.add_argument (interface_name);
-                       }
                        ccall.add_argument (new CCodeConstant ("\"%s\"".printf (method_name)));
-                       ccode.add_assignment (new CCodeIdentifier ("_message"), ccall);
 
-                       ccode.add_declaration ("GVariant", new CCodeVariableDeclarator ("*_arguments"));
                        ccode.add_declaration ("GVariantBuilder", new CCodeVariableDeclarator ("_arguments_builder"));
 
                        var builder_init = new CCodeFunctionCall (new CCodeIdentifier ("g_variant_builder_init"));
@@ -655,244 +636,182 @@ public class Vala.GDBusClientModule : GDBusModule {
 
                        var builder_end = new CCodeFunctionCall (new CCodeIdentifier ("g_variant_builder_end"));
                        builder_end.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("_arguments_builder")));
-                       ccode.add_assignment (new CCodeIdentifier ("_arguments"), builder_end);
-
-                       var set_body = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_set_body"));
-                       set_body.add_argument (new CCodeIdentifier ("_message"));
-                       set_body.add_argument (new CCodeIdentifier ("_arguments"));
-                       ccode.add_expression (set_body);
+                       ccall.add_argument (builder_end);
+                       ccall.add_argument (new CCodeConstant ("G_DBUS_CALL_FLAGS_NONE"));
+                       ccall.add_argument (new CCodeConstant ("%d".printf (method_timeout)));
 
                        if (uses_fd) {
-                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_set_unix_fd_list"));
-                               ccall.add_argument (new CCodeIdentifier ("_message"));
-                               ccall.add_argument (new CCodeIdentifier ("_fd_list"));
-                               ccode.add_expression (ccall);
-
-                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_object_unref"));
                                ccall.add_argument (new CCodeIdentifier ("_fd_list"));
-                               ccode.add_expression (ccall);
+                               if (call_type == CallType.SYNC) {
+                                       ccall.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("_out_fd_list")));
+                               }
                        }
 
-                       // send D-Bus message
+                       ccall.add_argument (cancellable);
 
                        if (call_type == CallType.SYNC) {
-                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_connection_send_message_with_reply_sync"));
-                               ccall.add_argument (connection);
-                               ccall.add_argument (new CCodeIdentifier ("_message"));
-                               ccall.add_argument (new CCodeConstant ("G_DBUS_SEND_MESSAGE_FLAGS_NONE"));
-                               ccall.add_argument (timeout);
-                               ccall.add_argument (new CCodeConstant ("NULL"));
-                               ccall.add_argument (cancellable);
+                               ccall.call = new CCodeIdentifier (uses_fd ? "g_dbus_proxy_call_with_unix_fd_list_sync" : "g_dbus_proxy_call_sync");
                                ccall.add_argument (error_argument);
-                               ccode.add_assignment (new CCodeIdentifier ("_reply_message"), ccall);
+                               ccode.add_assignment (new CCodeIdentifier ("_reply"), ccall);
                        } else if (call_type == CallType.NO_REPLY) {
-                               var set_flags = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_set_flags"));
-                               set_flags.add_argument (new CCodeIdentifier ("_message"));
-                               set_flags.add_argument (new CCodeConstant ("G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED"));
-                               ccode.add_expression (set_flags);
-
-                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_connection_send_message"));
-                               ccall.add_argument (connection);
-                               ccall.add_argument (new CCodeIdentifier ("_message"));
-                               ccall.add_argument (new CCodeConstant ("G_DBUS_SEND_MESSAGE_FLAGS_NONE"));
+                               ccall.call = new CCodeIdentifier (uses_fd ? "g_dbus_proxy_call_with_unix_fd_list" : "g_dbus_proxy_call");
+                               ccall.add_argument (new CCodeConstant ("NULL"));
                                ccall.add_argument (new CCodeConstant ("NULL"));
-                               ccall.add_argument (error_argument);
                                ccode.add_expression (ccall);
                        } else if (call_type == CallType.ASYNC) {
-                               var callback_specified = new CCodeBinaryExpression (CCodeBinaryOperator.INEQUALITY, new CCodeIdentifier ("_callback_"), new CCodeConstant ("NULL"));
-                               ccode.open_if (callback_specified);
-
-                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_connection_send_message_with_reply"));
-                               ccall.add_argument (connection);
-                               ccall.add_argument (new CCodeIdentifier ("_message"));
-                               ccall.add_argument (new CCodeConstant ("G_DBUS_SEND_MESSAGE_FLAGS_NONE"));
-                               ccall.add_argument (timeout);
-                               ccall.add_argument (new CCodeConstant ("NULL"));
-                               ccall.add_argument (cancellable);
-
-                               CCodeFunctionCall res_wrapper = null;
-
-                               // use wrapper as source_object wouldn't be correct otherwise
-                               ccall.add_argument (new CCodeIdentifier (generate_async_callback_wrapper ()));
-                               res_wrapper = new CCodeFunctionCall (new CCodeIdentifier ("g_task_new"));
-                               res_wrapper.add_argument (new CCodeCastExpression (new CCodeIdentifier ("self"), "GObject *"));
-                               res_wrapper.add_argument (new CCodeConstant ("NULL"));
-                               res_wrapper.add_argument (new CCodeIdentifier ("_callback_"));
-                               res_wrapper.add_argument (new CCodeIdentifier ("_user_data_"));
-                               ccall.add_argument (res_wrapper);
-
+                               ccall.call = new CCodeIdentifier (uses_fd ? "g_dbus_proxy_call_with_unix_fd_list" : "g_dbus_proxy_call");
+                               ccall.add_argument (new CCodeIdentifier ("_callback_"));
+                               ccall.add_argument (new CCodeIdentifier ("_user_data_"));
                                ccode.add_expression (ccall);
+                       }
 
-                               ccode.add_else ();
-
-                               var set_flags = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_set_flags"));
-                               set_flags.add_argument (new CCodeIdentifier ("_message"));
-                               set_flags.add_argument (new CCodeConstant ("G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED"));
-                               ccode.add_expression (set_flags);
-
-                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_connection_send_message"));
-                               ccall.add_argument (connection);
-                               ccall.add_argument (new CCodeIdentifier ("_message"));
-                               ccall.add_argument (new CCodeConstant ("G_DBUS_SEND_MESSAGE_FLAGS_NONE"));
-                               ccall.add_argument (new CCodeConstant ("NULL"));
-                               ccall.add_argument (new CCodeConstant ("NULL"));
+                       if (uses_fd) {
+                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_object_unref"));
+                               ccall.add_argument (new CCodeIdentifier ("_fd_list"));
                                ccode.add_expression (ccall);
-
-                               ccode.close ();
                        }
-
-                       // free D-Bus message
-
-                       ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_object_unref"));
-                       ccall.add_argument (new CCodeIdentifier ("_message"));
-                       ccode.add_expression (ccall);
+                       if (call_type == CallType.NO_REPLY || call_type == CallType.ASYNC) {
+                               return;
+                       }
                } else {
-                       var ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_connection_send_message_with_reply_finish"));
-                       ccall.add_argument (connection);
-
-                       // unwrap async result
-                       ccode.add_declaration ("GAsyncResult", new CCodeVariableDeclarator ("*_inner_res"));
-
-                       var inner_res = new CCodeFunctionCall (new CCodeIdentifier ("g_task_propagate_pointer"));
-                       inner_res.add_argument (new CCodeCastExpression (new CCodeIdentifier ("_res_"), "GTask *"));
-                       inner_res.add_argument (new CCodeConstant ("NULL"));
-                       ccode.add_assignment (new CCodeIdentifier ("_inner_res"), inner_res);
-
-                       ccall.add_argument (new CCodeIdentifier ("_inner_res"));
+                       ccall.call = new CCodeIdentifier (uses_fd ? "g_dbus_proxy_call_with_unix_fd_list_finish" : "g_dbus_proxy_call_finish");
+                       if (uses_fd) {
+                               ccall.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("_out_fd_list")));
+                       }
+                       ccall.add_argument (new CCodeIdentifier ("_res_"));
                        ccall.add_argument (error_argument);
-                       ccode.add_assignment (new CCodeIdentifier ("_reply_message"), ccall);
 
-                       // _inner_res is guaranteed to be non-NULL, so just unref it
-                       var unref_inner_res = new CCodeFunctionCall (new CCodeIdentifier ("g_object_unref"));
-                       unref_inner_res.add_argument (new CCodeIdentifier ("_inner_res"));
-                       ccode.add_expression (unref_inner_res);
+                       ccode.add_assignment (new CCodeIdentifier ("_reply"), ccall);
                }
 
-               if (call_type == CallType.SYNC || call_type == CallType.FINISH) {
-                       ccode.add_declaration ("GDBusMessage", new CCodeVariableDeclarator ("*_reply_message"));
-
-                       var unref_reply = new CCodeFunctionCall (new CCodeIdentifier ("g_object_unref"));
-                       unref_reply.add_argument (new CCodeIdentifier ("_reply_message"));
+               // Return on errors.
+               var reply_is_null = new CCodeUnaryExpression (CCodeUnaryOperator.LOGICAL_NEGATION, new CCodeIdentifier ("_reply"));
+               ccode.open_if (reply_is_null);
+               return_default_value (m.return_type, true);
+               ccode.close ();
 
-                       // return on io error
-                       var reply_is_null = new CCodeUnaryExpression (CCodeUnaryOperator.LOGICAL_NEGATION, new CCodeIdentifier ("_reply_message"));
-                       ccode.open_if (reply_is_null);
-                       return_default_value (m.return_type);
-                       ccode.close ();
+               bool has_result = !(m.return_type is VoidType);
 
-                       // return on remote error
-                       var ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_to_gerror"));
-                       ccall.add_argument (new CCodeIdentifier ("_reply_message"));
-                       ccall.add_argument (error_argument);
-                       ccode.open_if (ccall);
-                       ccode.add_expression (unref_reply);
-                       return_default_value (m.return_type);
-                       ccode.close ();
+               foreach (Parameter param in m.get_parameters ()) {
+                       if (param.direction == ParameterDirection.OUT) {
+                               has_result = true;
+                       }
+               }
 
-                       bool has_result = !(m.return_type is VoidType);
+               var unref_reply = new CCodeFunctionCall (new CCodeIdentifier ("g_variant_unref"));
+               unref_reply.add_argument (new CCodeIdentifier ("_reply"));
+               CCodeStatement? unref_out_fd_list = null;
+               if (uses_fd) {
+                       ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_object_unref"));
+                       ccall.add_argument (new CCodeIdentifier ("_out_fd_list"));
+                       var cblock = new CCodeBlock ();
+                       cblock.add_statement (new CCodeExpressionStatement (ccall));
+                       unref_out_fd_list = new CCodeIfStatement (new CCodeIdentifier ("_out_fd_list"), cblock);
+               }
 
+               if (!has_result) {
+                       ccode.add_expression (unref_reply);
                        if (uses_fd) {
-                               ccode.add_declaration ("gint", new CCodeVariableDeclarator.zero ("_fd_index", new CCodeConstant ("0")));
-                               ccode.add_declaration ("gint", new CCodeVariableDeclarator ("_fd"));
-                       }
-
-                       foreach (Parameter param in m.get_parameters ()) {
-                               if (param.direction == ParameterDirection.OUT) {
-                                       has_result = true;
-                               }
+                               ccode.add_statement ((!) unref_out_fd_list);
                        }
+                       return;
+               }
 
-                       if (has_result) {
-                               ccode.add_declaration ("GVariant", new CCodeVariableDeclarator ("*_reply"));
-                               ccode.add_declaration ("GVariantIter", new CCodeVariableDeclarator ("_reply_iter"));
+               if (uses_fd) {
+                       ccode.add_declaration ("gint", new CCodeVariableDeclarator.zero ("_fd_index", new CCodeConstant ("0")));
+                       ccode.add_declaration ("gint", new CCodeVariableDeclarator ("_fd"));
+               }
+               ccode.add_declaration ("GVariantIter", new CCodeVariableDeclarator ("_reply_iter"));
 
-                               ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_get_body"));
-                               ccall.add_argument (new CCodeIdentifier ("_reply_message"));
-                               ccode.add_assignment (new CCodeIdentifier ("_reply"), ccall);
+               var iter_init = new CCodeFunctionCall (new CCodeIdentifier ("g_variant_iter_init"));
+               iter_init.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("_reply_iter")));
+               iter_init.add_argument (new CCodeIdentifier ("_reply"));
+               ccode.add_expression (iter_init);
 
-                               var iter_init = new CCodeFunctionCall (new CCodeIdentifier ("g_variant_iter_init"));
-                               iter_init.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("_reply_iter")));
-                               iter_init.add_argument (new CCodeIdentifier ("_reply"));
-                               ccode.add_expression (iter_init);
+               foreach (Parameter param in m.get_parameters ()) {
+                       if (param.direction == ParameterDirection.OUT) {
+                               ccode.add_declaration (get_ccode_name (param.variable_type), new CCodeVariableDeclarator.zero ("_vala_%s".printf (param.name), default_value_for_type (param.variable_type, true)));
 
-                               foreach (Parameter param in m.get_parameters ()) {
-                                       if (param.direction == ParameterDirection.OUT) {
-                                               ccode.add_declaration (get_ccode_name (param.variable_type), new CCodeVariableDeclarator.zero ("_vala_%s".printf (param.name), default_value_for_type (param.variable_type, true)));
+                               var array_type = param.variable_type as ArrayType;
+                               if (array_type != null) {
+                                       var length_ctype = get_ccode_array_length_type (array_type);
+                                       for (int dim = 1; dim <= array_type.rank; dim++) {
+                                               ccode.add_declaration (length_ctype, new CCodeVariableDeclarator ("_vala_%s_length%d".printf (param.name, dim), new CCodeConstant ("0")));
+                                       }
+                               }
 
-                                               var array_type = param.variable_type as ArrayType;
-                                               if (array_type != null) {
-                                                       var length_ctype = get_ccode_array_length_type (array_type);
-                                                       for (int dim = 1; dim <= array_type.rank; dim++) {
-                                                               ccode.add_declaration (length_ctype, new CCodeVariableDeclarator ("_vala_%s_length%d".printf (param.name, dim), new CCodeConstant ("0")));
-                                                       }
-                                               }
+                               var target = new CCodeIdentifier ("_vala_%s".printf (param.name));
+                               bool may_fail;
 
-                                               var target = new CCodeIdentifier ("_vala_%s".printf (param.name));
-                                               bool may_fail;
+                               receive_dbus_value (param.variable_type, new CCodeIdentifier ("_out_fd_list"), new CCodeIdentifier ("_reply_iter"), target, param, error_argument, out may_fail);
 
-                                               receive_dbus_value (param.variable_type, new CCodeIdentifier ("_reply_message"), new CCodeIdentifier ("_reply_iter"), target, param, error_argument, out may_fail);
+                               // TODO check that parameter is not NULL (out parameters are optional)
+                               // free value if parameter is NULL
+                               ccode.add_assignment (new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier (get_variable_cname (param.name))), target);
 
+                               if (array_type != null) {
+                                       for (int dim = 1; dim <= array_type.rank; dim++) {
                                                // TODO check that parameter is not NULL (out parameters are optional)
-                                               // free value if parameter is NULL
-                                               ccode.add_assignment (new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier (get_variable_cname (param.name))), target);
-
-                                               if (array_type != null) {
-                                                       for (int dim = 1; dim <= array_type.rank; dim++) {
-                                                               // TODO check that parameter is not NULL (out parameters are optional)
-                                                               ccode.add_assignment (new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("%s_length%d".printf (param.name, dim))), new CCodeIdentifier ("_vala_%s_length%d".printf (param.name, dim)));
-                                                       }
-                                               }
-
-                                               if (may_fail && has_error_argument) {
-                                                       ccode.open_if (new CCodeBinaryExpression (CCodeBinaryOperator.AND, new CCodeIdentifier ("error"), new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("error"))));
-                                                       ccode.add_expression (unref_reply);
-                                                       return_default_value (m.return_type);
-                                                       ccode.close ();
-                                               }
+                                               ccode.add_assignment (new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("%s_length%d".printf (param.name, dim))), new CCodeIdentifier ("_vala_%s_length%d".printf (param.name, dim)));
                                        }
                                }
 
-                               if (!(m.return_type is VoidType)) {
-                                       if (m.return_type.is_real_non_null_struct_type ()) {
-                                               var target = new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("result"));
-                                               receive_dbus_value (m.return_type, new CCodeIdentifier ("_reply_message"), new CCodeIdentifier ("_reply_iter"), target, m);
-                                       } else {
-                                               ccode.add_declaration (get_ccode_name (m.return_type), new CCodeVariableDeclarator.zero ("_result", default_value_for_type (m.return_type, true)));
-
-                                               var array_type = m.return_type as ArrayType;
-                                               if (array_type != null) {
-                                                       var length_ctype = get_ccode_array_length_type (array_type);
-                                                       for (int dim = 1; dim <= array_type.rank; dim++) {
-                                                               ccode.add_declaration (length_ctype, new CCodeVariableDeclarator ("_result_length%d".printf (dim), new CCodeConstant ("0")));
-                                                       }
-                                               }
-
-                                               bool may_fail;
-                                               receive_dbus_value (m.return_type, new CCodeIdentifier ("_reply_message"), new CCodeIdentifier ("_reply_iter"), new CCodeIdentifier ("_result"), m, new CCodeIdentifier ("error"), out may_fail);
-
-                                               if (array_type != null) {
-                                                       for (int dim = 1; dim <= array_type.rank; dim++) {
-                                                               // TODO check that parameter is not NULL (out parameters are optional)
-                                                               ccode.add_assignment (new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("result_length%d".printf (dim))), new CCodeIdentifier ("_result_length%d".printf (dim)));
-                                                       }
-                                               }
-
-                                               if (may_fail) {
-                                                       ccode.open_if (new CCodeBinaryExpression (CCodeBinaryOperator.AND, new CCodeIdentifier ("error"), new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("error"))));
-                                                       ccode.add_expression (unref_reply);
-                                                       return_default_value (m.return_type);
-                                                       ccode.close ();
-                                               }
+                               if (may_fail && has_error_argument) {
+                                       ccode.open_if (new CCodeBinaryExpression (CCodeBinaryOperator.AND, new CCodeIdentifier ("error"), new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("error"))));
+                                       ccode.add_expression (unref_reply);
+                                       if (uses_fd) {
+                                               ccode.add_statement ((!) unref_out_fd_list);
                                        }
+                                       return_default_value (m.return_type, true);
+                                       ccode.close ();
                                }
                        }
+               }
 
-                       ccode.add_expression (unref_reply);
+               if (!(m.return_type is VoidType)) {
+                       if (m.return_type.is_real_non_null_struct_type ()) {
+                               var target = new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("result"));
+                               receive_dbus_value (m.return_type, new CCodeIdentifier ("_out_fd_list"), new CCodeIdentifier ("_reply_iter"), target, m);
+                       } else {
+                               ccode.add_declaration (get_ccode_name (m.return_type), new CCodeVariableDeclarator.zero ("_result", default_value_for_type (m.return_type, true)));
+
+                               var array_type = m.return_type as ArrayType;
+                               if (array_type != null) {
+                                       var length_ctype = get_ccode_array_length_type (array_type);
+                                       for (int dim = 1; dim <= array_type.rank; dim++) {
+                                               ccode.add_declaration (length_ctype, new CCodeVariableDeclarator ("_result_length%d".printf (dim), new CCodeConstant ("0")));
+                                       }
+                               }
+
+                               bool may_fail;
+                               receive_dbus_value (m.return_type, new CCodeIdentifier ("_out_fd_list"), new CCodeIdentifier ("_reply_iter"), new CCodeIdentifier ("_result"), m, new CCodeIdentifier ("error"), out may_fail);
 
-                       if (!(m.return_type is VoidType || m.return_type.is_real_non_null_struct_type ())) {
-                               ccode.add_return (new CCodeIdentifier ("_result"));
+                               if (array_type != null) {
+                                       for (int dim = 1; dim <= array_type.rank; dim++) {
+                                               // TODO check that parameter is not NULL (out parameters are optional)
+                                               ccode.add_assignment (new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("result_length%d".printf (dim))), new CCodeIdentifier ("_result_length%d".printf (dim)));
+                                       }
+                               }
+                               if (may_fail) {
+                                       ccode.open_if (new CCodeBinaryExpression (CCodeBinaryOperator.AND, new CCodeIdentifier ("error"), new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, new CCodeIdentifier ("error"))));
+                                       ccode.add_expression (unref_reply);
+                                       if (uses_fd) {
+                                               ccode.add_statement ((!) unref_out_fd_list);
+                                       }
+                                       return_default_value (m.return_type, true);
+                                       ccode.close ();
+                               }
                        }
                }
+
+               ccode.add_expression (unref_reply);
+               if (uses_fd) {
+                       ccode.add_statement ((!) unref_out_fd_list);
+               }
+
+               if (!(m.return_type is VoidType || m.return_type.is_real_non_null_struct_type ())) {
+                       ccode.add_return (new CCodeIdentifier ("_result"));
+               }
        }
 
        string generate_dbus_proxy_method (Interface main_iface, Interface iface, Method m) {
index 5c88f88c0dcd2d542908f2ed890ab324e58c6ebb..f779934977e2d04a05f326c808c223bafff97f42 100644 (file)
@@ -216,23 +216,17 @@ public class Vala.GDBusModule : GVariantModule {
                return null;
        }
 
-       public void receive_dbus_value (DataType type, CCodeExpression message_expr, CCodeExpression iter_expr, CCodeExpression target_expr, Symbol? sym, CCodeExpression? error_expr = null, out bool may_fail = null) {
-               var fd_list = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_get_unix_fd_list"));
-               fd_list.add_argument (message_expr);
-
+       public void receive_dbus_value (DataType type, CCodeExpression? fd_list_expr, CCodeExpression iter_expr, CCodeExpression target_expr, Symbol? sym, CCodeExpression? error_expr = null, out bool may_fail = null) {
                var fd_var = new CCodeIdentifier ("_fd");
 
                var stream = create_from_file_descriptor (type, fd_var);
                if (stream != null) {
-                       var fd_list_var = new CCodeIdentifier ("_fd_list");
-
                        var fd = new CCodeFunctionCall (new CCodeIdentifier ("g_unix_fd_list_get"));
-                       fd.add_argument (fd_list_var);
+                       fd.add_argument (fd_list_expr);
                        fd.add_argument (new CCodeIdentifier ("_fd_index"));
                        fd.add_argument (error_expr);
 
-                       ccode.add_assignment (fd_list_var, fd_list);
-                       ccode.open_if (fd_list_var);
+                       ccode.open_if (fd_list_expr);
 
                        var get_fd = new CCodeFunctionCall (new CCodeIdentifier ("g_variant_iter_next"));
                        get_fd.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, iter_expr));
@@ -253,13 +247,14 @@ public class Vala.GDBusModule : GVariantModule {
                        set_error.add_argument (error_expr);
                        set_error.add_argument (new CCodeIdentifier ("G_IO_ERROR"));
                        set_error.add_argument (new CCodeIdentifier ("G_IO_ERROR_FAILED"));
-                       set_error.add_argument (new CCodeConstant ("\"FD List is NULL\""));
+                       set_error.add_argument (new CCodeConstant ("\"No file descriptor returned\""));
                        ccode.add_expression (set_error);
                        ccode.close ();
                } else {
                        read_expression (type, iter_expr, target_expr, sym, error_expr, out may_fail);
                }
        }
+
        CCodeExpression get_method_info (ObjectTypeSymbol sym) {
                var infos = new CCodeInitializerList ();
 
index e4b622c7d4ca96ed1424822b92fb8a02f66ca003..4e782e09a55bef293d57a53b8db0d07d4d89b4ae 100644 (file)
@@ -164,9 +164,11 @@ public class Vala.GDBusServerModule : GDBusClientModule {
 
                                var message_expr = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_method_invocation_get_message"));
                                message_expr.add_argument (new CCodeIdentifier ("invocation"));
+                               var fd_list_expr = new CCodeFunctionCall (new CCodeIdentifier ("g_dbus_message_get_unix_fd_list"));
+                               fd_list_expr.add_argument (message_expr);
 
                                bool may_fail;
-                               receive_dbus_value (param.variable_type, message_expr, new CCodeIdentifier ("_arguments_iter"), param_expr, param, new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("error")), out may_fail);
+                               receive_dbus_value (param.variable_type, fd_list_expr, new CCodeIdentifier ("_arguments_iter"), param_expr, param, new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, new CCodeIdentifier ("error")), out may_fail);
 
                                if (may_fail) {
                                        if (!uses_error) {
index 7b0d3ab53f167fad71415930fd22e08e967c0fe7..4379c7fe6f5079d485e89333ab8cb60389cb502b 100644 (file)
@@ -285,14 +285,11 @@ test_proxy_test_int (Test* self,
                      gint* result_length1,
                      GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
        gint* _tmp0_;
        GVariantBuilder _tmp1_;
        gint _tmp2_;
-       GDBusMessage *_reply_message;
-       GVariant *_reply;
        GVariantIter _reply_iter;
        gint* _vala_j = NULL;
        gint _vala_j_length1;
@@ -312,8 +309,6 @@ test_proxy_test_int (Test* self,
        gint _tmp8__length1;
        GVariantIter _tmp9_;
        GVariant* _tmp10_;
-       G_IO_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", "TestInt");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        _tmp0_ = i;
        g_variant_builder_init (&_tmp1_, G_VARIANT_TYPE ("ai"));
@@ -322,18 +317,10 @@ test_proxy_test_int (Test* self,
                _tmp0_++;
        }
        g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp1_));
-       _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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestInt", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _vala_j_length1 = 0;
        _tmp3_ = g_variant_iter_next_value (&_reply_iter);
@@ -374,7 +361,7 @@ test_proxy_test_int (Test* self,
        _result = _tmp8_;
        g_variant_unref (_tmp7_);
        *result_length1 = _result_length1;
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -387,14 +374,11 @@ test_proxy_test_string (Test* self,
                         gint* result_length1,
                         GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
        gchar** _tmp11_;
        GVariantBuilder _tmp12_;
        gint _tmp13_;
-       GDBusMessage *_reply_message;
-       GVariant *_reply;
        GVariantIter _reply_iter;
        gchar** _vala_t = NULL;
        gint _vala_t_length1;
@@ -414,8 +398,6 @@ test_proxy_test_string (Test* self,
        gint _tmp19__length1;
        GVariantIter _tmp20_;
        GVariant* _tmp21_;
-       G_IO_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", "TestString");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        _tmp11_ = s;
        g_variant_builder_init (&_tmp12_, G_VARIANT_TYPE ("as"));
@@ -424,18 +406,10 @@ test_proxy_test_string (Test* self,
                _tmp11_++;
        }
        g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp12_));
-       _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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestString", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _vala_t_length1 = 0;
        _tmp14_ = g_variant_iter_next_value (&_reply_iter);
@@ -478,7 +452,7 @@ test_proxy_test_string (Test* self,
        _result = _tmp19_;
        g_variant_unref (_tmp18_);
        *result_length1 = _result_length1;
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 3e5c4b484b98b86bb44674f30cb6ca775dd665bd..4812b9bf1863b77dfc9c9e67fa174f98abadd347 100644 (file)
@@ -181,37 +181,22 @@ static gint
 test_proxy_get_test (Test* self,
                      GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gint _result = 0;
-       GVariant* _tmp2_;
-       G_DBUS_ERROR;
-       G_IO_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", "GetTest");
+       GVariant* _tmp1_;
        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) {
-               gint _tmp0_ = 0;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "GetTest", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
-       _result = g_variant_get_int32 (_tmp2_);
-       g_variant_unref (_tmp2_);
-       g_object_unref (_reply_message);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _result = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 8aef3be7256fa4091913f92253ab23b9bea588aa..e689ae383e6b8c1f09ce8eecc4298e3643a95c01 100644 (file)
@@ -181,37 +181,22 @@ static gint
 test_proxy_get_test (Test* self,
                      GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gint _result = 0;
-       GVariant* _tmp2_;
-       G_DBUS_ERROR;
-       G_IO_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", "GetTest");
+       GVariant* _tmp1_;
        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) {
-               gint _tmp0_ = 0;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "GetTest", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
-       _result = g_variant_get_int32 (_tmp2_);
-       g_variant_unref (_tmp2_);
-       g_object_unref (_reply_message);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _result = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 73df6b27ea886e13737ce78f1780c51bda59532b..a1dc5065db79cf30c9535ccccf1bb9b9dbba3572 100644 (file)
@@ -145,9 +145,6 @@ static void test_proxy_g_signal (GDBusProxy* proxy,
                           const gchar* sender_name,
                           const gchar* signal_name,
                           GVariant* parameters);
-static void _vala_g_async_ready_callback (GObject *source_object,
-                                   GAsyncResult *res,
-                                   void *user_data);
 static void test_proxy_test_void_async (Test* self,
                                  GAsyncReadyCallback _callback_,
                                  gpointer _user_data_);
@@ -416,34 +413,14 @@ test_proxy_init (TestProxy* self)
        g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_test_dbus_interface_info));
 }
 
-static void
-_vala_g_async_ready_callback (GObject *source_object,
-                              GAsyncResult *res,
-                              void *user_data)
-{
-       g_task_return_pointer (user_data, g_object_ref (res), g_object_unref);
-       g_object_unref (user_data);
-}
-
 static void
 test_proxy_test_void_async (Test* self,
                             GAsyncReadyCallback _callback_,
                             gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       _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);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestVoid", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static void
@@ -451,19 +428,12 @@ test_proxy_test_void_finish (Test* self,
                              GAsyncResult* _res_,
                              GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       GVariant *_reply;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -472,21 +442,10 @@ test_proxy_test_int_async (Test* self,
                            GAsyncReadyCallback _callback_,
                            gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       _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);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestInt", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static gint
@@ -495,36 +454,26 @@ test_proxy_test_int_finish (Test* self,
                             gint* j,
                             GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
        GVariantIter _reply_iter;
        gint _vala_j = 0;
-       GVariant* _tmp2_;
+       GVariant* _tmp1_;
        gint _result = 0;
-       GVariant* _tmp3_;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               gint _tmp0_ = 0;
+       GVariant* _tmp2_;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_j = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       *j = _vala_j;
        _tmp2_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_j = g_variant_get_int32 (_tmp2_);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -534,21 +483,10 @@ test_proxy_test_string_async (Test* self,
                               GAsyncReadyCallback _callback_,
                               gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       _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);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestString", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static gchar*
@@ -557,34 +495,25 @@ test_proxy_test_string_finish (Test* self,
                                gchar** t,
                                GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
        GVariantIter _reply_iter;
        gchar* _vala_t = NULL;
-       GVariant* _tmp4_;
+       GVariant* _tmp3_;
        gchar* _result = NULL;
-       GVariant* _tmp5_;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return NULL;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       GVariant* _tmp4_;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
+       _tmp3_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_t = g_variant_dup_string (_tmp3_, NULL);
+       g_variant_unref (_tmp3_);
+       *t = _vala_t;
        _tmp4_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_t = g_variant_dup_string (_tmp4_, NULL);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -594,20 +523,9 @@ test_proxy_test_cancellable_async (Test* self,
                                    GAsyncReadyCallback _callback_,
                                    gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       _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);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, cancellable, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestCancellable", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, cancellable, _callback_, _user_data_);
 }
 
 static void
@@ -615,19 +533,12 @@ test_proxy_test_cancellable_finish (Test* self,
                                     GAsyncResult* _res_,
                                     GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       GVariant *_reply;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -692,13 +603,13 @@ _dbus_test_test_int (Test* self,
 {
        GVariantIter _arguments_iter;
        TestTestIntReadyData* _ready_data;
-       GVariant* _tmp6_;
+       GVariant* _tmp5_;
        g_variant_iter_init (&_arguments_iter, _parameters_);
        _ready_data = g_slice_new0 (TestTestIntReadyData);
        _ready_data->_invocation_ = invocation;
-       _tmp6_ = g_variant_iter_next_value (&_arguments_iter);
-       _ready_data->i = g_variant_get_int32 (_tmp6_);
-       g_variant_unref (_tmp6_);
+       _tmp5_ = g_variant_iter_next_value (&_arguments_iter);
+       _ready_data->i = g_variant_get_int32 (_tmp5_);
+       g_variant_unref (_tmp5_);
        test_test_int (self, _ready_data->i, (GAsyncReadyCallback) _dbus_test_test_int_ready, _ready_data);
 }
 
@@ -742,13 +653,13 @@ _dbus_test_test_string (Test* self,
 {
        GVariantIter _arguments_iter;
        TestTestStringReadyData* _ready_data;
-       GVariant* _tmp7_;
+       GVariant* _tmp6_;
        g_variant_iter_init (&_arguments_iter, _parameters_);
        _ready_data = g_slice_new0 (TestTestStringReadyData);
        _ready_data->_invocation_ = invocation;
-       _tmp7_ = g_variant_iter_next_value (&_arguments_iter);
-       _ready_data->s = g_variant_dup_string (_tmp7_, NULL);
-       g_variant_unref (_tmp7_);
+       _tmp6_ = g_variant_iter_next_value (&_arguments_iter);
+       _ready_data->s = g_variant_dup_string (_tmp6_, NULL);
+       g_variant_unref (_tmp6_);
        test_test_string (self, _ready_data->s, (GAsyncReadyCallback) _dbus_test_test_string_ready, _ready_data);
        _error:
        ;
index d82de992c24ae98fb665e7b39946780dc3a7e7e0..1081d464f0d67f70ae51443eb265c3d587f10eae 100644 (file)
@@ -157,9 +157,6 @@ static void test_proxy_g_signal (GDBusProxy* proxy,
                           const gchar* sender_name,
                           const gchar* signal_name,
                           GVariant* parameters);
-static void _vala_g_async_ready_callback (GObject *source_object,
-                                   GAsyncResult *res,
-                                   void *user_data);
 static void test_proxy_list_messages_async (Test* self,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
@@ -356,35 +353,14 @@ test_proxy_init (TestProxy* self)
        g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_test_dbus_interface_info));
 }
 
-static void
-_vala_g_async_ready_callback (GObject *source_object,
-                              GAsyncResult *res,
-                              void *user_data)
-{
-       g_task_return_pointer (user_data, g_object_ref (res), g_object_unref);
-       g_object_unref (user_data);
-}
-
 static void
 test_proxy_list_messages_async (Test* self,
                                 GAsyncReadyCallback _callback_,
                                 gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_IO_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", "ListMessages");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "ListMessages", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static gchar**
@@ -393,8 +369,6 @@ test_proxy_list_messages_finish (Test* self,
                                  gint* result_length1,
                                  GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
        GVariantIter _reply_iter;
        gchar** _result = NULL;
@@ -406,17 +380,10 @@ test_proxy_list_messages_finish (Test* self,
        gint _tmp1__length1;
        GVariantIter _tmp2_;
        GVariant* _tmp3_;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return NULL;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _result_length1 = 0;
        _tmp0_ = g_variant_iter_next_value (&_reply_iter);
@@ -438,7 +405,7 @@ test_proxy_list_messages_finish (Test* self,
        _result = _tmp1_;
        g_variant_unref (_tmp0_);
        *result_length1 = _result_length1;
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -448,22 +415,10 @@ test_proxy_post_message_async (Test* self,
                                GAsyncReadyCallback _callback_,
                                gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_IO_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", "PostMessage");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (message));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "PostMessage", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static void
@@ -471,19 +426,12 @@ test_proxy_post_message_finish (Test* self,
                                 GAsyncResult* _res_,
                                 GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       GVariant *_reply;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
index 7e1877d471b615eb2c0ce3dcfc8b1fd474bb4781..31ca690b10bef33f3f633d6cd2acf69146bd68d4 100644 (file)
@@ -136,9 +136,6 @@ static void test_proxy_g_signal (GDBusProxy* proxy,
                           const gchar* sender_name,
                           const gchar* signal_name,
                           GVariant* parameters);
-static void _vala_g_async_ready_callback (GObject *source_object,
-                                   GAsyncResult *res,
-                                   void *user_data);
 static void test_proxy_test_void_async (Test* self,
                                  GAsyncReadyCallback _callback_,
                                  gpointer _user_data_);
@@ -366,35 +363,14 @@ test_proxy_init (TestProxy* self)
        g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_test_dbus_interface_info));
 }
 
-static void
-_vala_g_async_ready_callback (GObject *source_object,
-                              GAsyncResult *res,
-                              void *user_data)
-{
-       g_task_return_pointer (user_data, g_object_ref (res), g_object_unref);
-       g_object_unref (user_data);
-}
-
 static void
 test_proxy_test_void_async (Test* self,
                             GAsyncReadyCallback _callback_,
                             gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_IO_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", "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);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestVoid", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static void
@@ -402,19 +378,12 @@ test_proxy_test_void_finish (Test* self,
                              GAsyncResult* _res_,
                              GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       GVariant *_reply;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -423,22 +392,10 @@ test_proxy_test_int_async (Test* self,
                            GAsyncReadyCallback _callback_,
                            gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_IO_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", "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);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestInt", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static gint
@@ -447,36 +404,26 @@ test_proxy_test_int_finish (Test* self,
                             gint* j,
                             GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
        GVariantIter _reply_iter;
        gint _vala_j = 0;
-       GVariant* _tmp2_;
+       GVariant* _tmp1_;
        gint _result = 0;
-       GVariant* _tmp3_;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               gint _tmp0_ = 0;
+       GVariant* _tmp2_;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_j = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       *j = _vala_j;
        _tmp2_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_j = g_variant_get_int32 (_tmp2_);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -486,22 +433,10 @@ test_proxy_test_string_async (Test* self,
                               GAsyncReadyCallback _callback_,
                               gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_IO_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", "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);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestString", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static gchar*
@@ -510,34 +445,25 @@ test_proxy_test_string_finish (Test* self,
                                gchar** t,
                                GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
        GVariantIter _reply_iter;
        gchar* _vala_t = NULL;
-       GVariant* _tmp4_;
+       GVariant* _tmp3_;
        gchar* _result = NULL;
-       GVariant* _tmp5_;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return NULL;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       GVariant* _tmp4_;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
+       _tmp3_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_t = g_variant_dup_string (_tmp3_, NULL);
+       g_variant_unref (_tmp3_);
+       *t = _vala_t;
        _tmp4_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_t = g_variant_dup_string (_tmp4_, NULL);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -601,13 +527,13 @@ _dbus_test_test_int (Test* self,
 {
        GVariantIter _arguments_iter;
        TestTestIntReadyData* _ready_data;
-       GVariant* _tmp6_;
+       GVariant* _tmp5_;
        g_variant_iter_init (&_arguments_iter, _parameters_);
        _ready_data = g_slice_new0 (TestTestIntReadyData);
        _ready_data->_invocation_ = invocation;
-       _tmp6_ = g_variant_iter_next_value (&_arguments_iter);
-       _ready_data->i = g_variant_get_int32 (_tmp6_);
-       g_variant_unref (_tmp6_);
+       _tmp5_ = g_variant_iter_next_value (&_arguments_iter);
+       _ready_data->i = g_variant_get_int32 (_tmp5_);
+       g_variant_unref (_tmp5_);
        test_test_int (self, _ready_data->i, (GAsyncReadyCallback) _dbus_test_test_int_ready, _ready_data);
 }
 
@@ -651,13 +577,13 @@ _dbus_test_test_string (Test* self,
 {
        GVariantIter _arguments_iter;
        TestTestStringReadyData* _ready_data;
-       GVariant* _tmp7_;
+       GVariant* _tmp6_;
        g_variant_iter_init (&_arguments_iter, _parameters_);
        _ready_data = g_slice_new0 (TestTestStringReadyData);
        _ready_data->_invocation_ = invocation;
-       _tmp7_ = g_variant_iter_next_value (&_arguments_iter);
-       _ready_data->s = g_variant_dup_string (_tmp7_, NULL);
-       g_variant_unref (_tmp7_);
+       _tmp6_ = g_variant_iter_next_value (&_arguments_iter);
+       _ready_data->s = g_variant_dup_string (_tmp6_, NULL);
+       g_variant_unref (_tmp6_);
        test_test_string (self, _ready_data->s, (GAsyncReadyCallback) _dbus_test_test_string_ready, _ready_data);
        _error:
        ;
index 67e9b333385eb0067536e38256b711ae1bd1932d..f661f4dec27aad6360506c40a0968cb2f0e45c7a 100644 (file)
@@ -380,25 +380,14 @@ static void
 test_proxy_test_void (Test* self,
                       GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
-       G_IO_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", "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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestVoid", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static gint
@@ -407,43 +396,29 @@ test_proxy_test_int (Test* self,
                      gint* j,
                      GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gint _vala_j = 0;
-       GVariant* _tmp2_;
+       GVariant* _tmp1_;
        gint _result = 0;
-       GVariant* _tmp3_;
-       G_IO_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", "TestInt");
+       GVariant* _tmp2_;
        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;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestInt", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_j = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       *j = _vala_j;
        _tmp2_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_j = g_variant_get_int32 (_tmp2_);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -453,41 +428,28 @@ test_proxy_test_string (Test* self,
                         gchar** t,
                         GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gchar* _vala_t = NULL;
-       GVariant* _tmp4_;
+       GVariant* _tmp3_;
        gchar* _result = NULL;
-       GVariant* _tmp5_;
-       G_IO_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", "TestString");
+       GVariant* _tmp4_;
        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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestString", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
+       _tmp3_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_t = g_variant_dup_string (_tmp3_, NULL);
+       g_variant_unref (_tmp3_);
+       *t = _vala_t;
        _tmp4_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_t = g_variant_dup_string (_tmp4_, NULL);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -497,43 +459,30 @@ test_proxy_test_signature (Test* self,
                            GVariantType** tp2,
                            GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       gchar* _tmp6_;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
+       gchar* _tmp5_;
        GVariantIter _reply_iter;
        GVariantType* _vala_tp2 = NULL;
-       GVariant* _tmp7_;
+       GVariant* _tmp6_;
        GVariantType* _result = NULL;
-       GVariant* _tmp8_;
-       G_IO_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", "TestSignature");
+       GVariant* _tmp7_;
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
-       _tmp6_ = g_variant_type_dup_string (tp1);
-       g_variant_builder_add_value (&_arguments_builder, g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp6_, strlen (_tmp6_) + 1, TRUE, g_free, _tmp6_));
-       _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);
+       _tmp5_ = g_variant_type_dup_string (tp1);
+       g_variant_builder_add_value (&_arguments_builder, g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp5_, strlen (_tmp5_) + 1, TRUE, g_free, _tmp5_));
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestSignature", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
+       _tmp6_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_tp2 = g_variant_type_new (g_variant_get_string (_tmp6_, NULL));
+       g_variant_unref (_tmp6_);
+       *tp2 = _vala_tp2;
        _tmp7_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_tp2 = g_variant_type_new (g_variant_get_string (_tmp7_, NULL));
+       _result = g_variant_type_new (g_variant_get_string (_tmp7_, NULL));
        g_variant_unref (_tmp7_);
-       *tp2 = _vala_tp2;
-       _tmp8_ = g_variant_iter_next_value (&_reply_iter);
-       _result = g_variant_type_new (g_variant_get_string (_tmp8_, NULL));
-       g_variant_unref (_tmp8_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -600,8 +549,8 @@ test_dbus_proxy_get_test_int_property (Test* self)
                _arguments = g_variant_builder_end (&_arguments_builder);
                _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
                if (!_reply) {
-                       gint _tmp9_ = 0;
-                       return _tmp9_;
+                       gint _tmp8_ = 0;
+                       return _tmp8_;
                }
                g_variant_get (_reply, "(v)", &_inner_reply);
                g_variant_unref (_reply);
@@ -665,13 +614,13 @@ test_dbus_proxy_set_test_signature_property (Test* self,
        GVariant *_arguments;
        GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       gchar* _tmp10_;
+       gchar* _tmp9_;
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.example.Test"));
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("TestSignatureProperty"));
        g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
-       _tmp10_ = g_variant_type_dup_string (value);
-       g_variant_builder_add_value (&_arguments_builder, g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp10_, strlen (_tmp10_) + 1, TRUE, g_free, _tmp10_));
+       _tmp9_ = g_variant_type_dup_string (value);
+       g_variant_builder_add_value (&_arguments_builder, g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp9_, strlen (_tmp9_) + 1, TRUE, g_free, _tmp9_));
        g_variant_builder_close (&_arguments_builder);
        _arguments = g_variant_builder_end (&_arguments_builder);
        _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
@@ -729,16 +678,16 @@ _dbus_test_test_int (Test* self,
        GError* error = NULL;
        GVariantIter _arguments_iter;
        gint i = 0;
-       GVariant* _tmp11_;
+       GVariant* _tmp10_;
        GDBusMessage* _reply_message = NULL;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
        gint j = 0;
        gint result;
        g_variant_iter_init (&_arguments_iter, _parameters_);
-       _tmp11_ = g_variant_iter_next_value (&_arguments_iter);
-       i = g_variant_get_int32 (_tmp11_);
-       g_variant_unref (_tmp11_);
+       _tmp10_ = g_variant_iter_next_value (&_arguments_iter);
+       i = g_variant_get_int32 (_tmp10_);
+       g_variant_unref (_tmp10_);
        result = test_test_int (self, i, &j, &error);
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
@@ -763,16 +712,16 @@ _dbus_test_test_string (Test* self,
        GError* error = NULL;
        GVariantIter _arguments_iter;
        gchar* s = NULL;
-       GVariant* _tmp12_;
+       GVariant* _tmp11_;
        GDBusMessage* _reply_message = NULL;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
        gchar* t = NULL;
        gchar* result;
        g_variant_iter_init (&_arguments_iter, _parameters_);
-       _tmp12_ = g_variant_iter_next_value (&_arguments_iter);
-       s = g_variant_dup_string (_tmp12_, NULL);
-       g_variant_unref (_tmp12_);
+       _tmp11_ = g_variant_iter_next_value (&_arguments_iter);
+       s = g_variant_dup_string (_tmp11_, NULL);
+       g_variant_unref (_tmp11_);
        result = test_test_string (self, s, &t, &error);
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
@@ -802,18 +751,18 @@ _dbus_test_test_signature (Test* self,
        GError* error = NULL;
        GVariantIter _arguments_iter;
        GVariantType* tp1 = NULL;
-       GVariant* _tmp13_;
+       GVariant* _tmp12_;
        GDBusMessage* _reply_message = NULL;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
        GVariantType* tp2 = NULL;
-       gchar* _tmp14_;
+       gchar* _tmp13_;
        GVariantType* result;
-       gchar* _tmp15_;
+       gchar* _tmp14_;
        g_variant_iter_init (&_arguments_iter, _parameters_);
-       _tmp13_ = g_variant_iter_next_value (&_arguments_iter);
-       tp1 = g_variant_type_new (g_variant_get_string (_tmp13_, NULL));
-       g_variant_unref (_tmp13_);
+       _tmp12_ = g_variant_iter_next_value (&_arguments_iter);
+       tp1 = g_variant_type_new (g_variant_get_string (_tmp12_, NULL));
+       g_variant_unref (_tmp12_);
        result = test_test_signature (self, tp1, &tp2, &error);
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
@@ -821,10 +770,10 @@ _dbus_test_test_signature (Test* self,
        }
        _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);
-       _tmp14_ = g_variant_type_dup_string (tp2);
+       _tmp13_ = g_variant_type_dup_string (tp2);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp13_, strlen (_tmp13_) + 1, TRUE, g_free, _tmp13_));
+       _tmp14_ = g_variant_type_dup_string (result);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp14_, strlen (_tmp14_) + 1, TRUE, g_free, _tmp14_));
-       _tmp15_ = g_variant_type_dup_string (result);
-       g_variant_builder_add_value (&_reply_builder, g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp15_, strlen (_tmp15_) + 1, TRUE, g_free, _tmp15_));
        _g_variant_type_free0 (result);
        _reply = g_variant_builder_end (&_reply_builder);
        g_dbus_message_set_body (_reply_message, _reply);
@@ -890,10 +839,10 @@ _dbus_test_get_test_signature_property (Test* self)
 {
        GVariantType* result;
        GVariant* _reply;
-       gchar* _tmp16_;
+       gchar* _tmp15_;
        result = test_get_test_signature_property (self);
-       _tmp16_ = g_variant_type_dup_string (result);
-       _reply = g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp16_, strlen (_tmp16_) + 1, TRUE, g_free, _tmp16_);
+       _tmp15_ = g_variant_type_dup_string (result);
+       _reply = g_variant_new_from_data (G_VARIANT_TYPE_SIGNATURE, _tmp15_, strlen (_tmp15_) + 1, TRUE, g_free, _tmp15_);
        _g_variant_type_free0 (result);
        return _reply;
 }
index 82c5e19ae3532db037a0efb1ac7d740eb3758e7a..ad9ed609f46e2aa1f29a4a3a0bbf97a1bd310589 100644 (file)
@@ -182,34 +182,21 @@ static GVariant*
 test_proxy_test_string (Test* self,
                         GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        GVariant* _result = NULL;
        GVariant* _tmp0_;
-       G_IO_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", "TestString");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestString", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _tmp0_ = g_variant_iter_next_value (&_reply_iter);
        _result = g_variant_get_variant (_tmp0_);
        g_variant_unref (_tmp0_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 9974ed63c3c3af93524a714d823561609927fd13..ffbcb76bcda7c7ff3b80c82ef9ed2470641408e2 100644 (file)
@@ -250,11 +250,8 @@ test_proxy_array (Test* self,
                   gint* result_length1,
                   GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gdouble* _result = NULL;
        gint _result_length1;
@@ -265,22 +262,11 @@ test_proxy_array (Test* self,
        gint _tmp1__length1;
        GVariantIter _tmp2_;
        GVariant* _tmp3_;
-       G_DBUS_ERROR;
-       G_IO_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", "Array");
        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 NULL;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Array", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _result_length1 = 0;
        _tmp0_ = g_variant_iter_next_value (&_reply_iter);
@@ -301,7 +287,7 @@ test_proxy_array (Test* self,
        _result = _tmp1_;
        g_variant_unref (_tmp0_);
        *result_length1 = _result_length1;
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -311,11 +297,8 @@ test_proxy_multi_array (Test* self,
                         gint* result_length2,
                         GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gdouble* _result = NULL;
        gint _result_length1;
@@ -327,22 +310,11 @@ test_proxy_multi_array (Test* self,
        gint _tmp5__length1;
        GVariantIter _tmp6_;
        GVariant* _tmp7_;
-       G_DBUS_ERROR;
-       G_IO_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", "MultiArray");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "MultiArray", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _result_length1 = 0;
        _result_length2 = 0;
@@ -374,7 +346,7 @@ test_proxy_multi_array (Test* self,
        g_variant_unref (_tmp4_);
        *result_length1 = _result_length1;
        *result_length2 = _result_length2;
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -385,11 +357,8 @@ test_proxy_multi_array2 (Test* self,
                          gint* result_length3,
                          GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gchar** _result = NULL;
        gint _result_length1;
@@ -402,22 +371,11 @@ test_proxy_multi_array2 (Test* self,
        gint _tmp11__length1;
        GVariantIter _tmp12_;
        GVariant* _tmp13_;
-       G_DBUS_ERROR;
-       G_IO_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", "MultiArray2");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "MultiArray2", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _result_length1 = 0;
        _result_length2 = 0;
@@ -461,7 +419,7 @@ test_proxy_multi_array2 (Test* self,
        *result_length1 = _result_length1;
        *result_length2 = _result_length2;
        *result_length3 = _result_length3;
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 99598aaeda1cf528f35bc45d536da0f4ceae6959..d301658989ef1297e04e9285ea99262130c6d95b 100644 (file)
@@ -183,11 +183,8 @@ static GHashTable*
 test_proxy_test_nested_dict (Test* self,
                              GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        GHashTable* _result = NULL;
        GVariant* _tmp0_;
@@ -195,21 +192,11 @@ test_proxy_test_nested_dict (Test* self,
        GVariantIter _tmp2_;
        GVariant* _tmp3_;
        GVariant* _tmp4_;
-       G_IO_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", "TestNestedDict");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestNestedDict", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _tmp0_ = g_variant_iter_next_value (&_reply_iter);
        _tmp1_ = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_hash_table_unref);
@@ -228,7 +215,7 @@ test_proxy_test_nested_dict (Test* self,
        }
        _result = _tmp1_;
        g_variant_unref (_tmp0_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 96299500173bce6fe720e2c41d88c029fc1f4980..bc58be5c011f62a6cb5c0e52950b81699106745d 100644 (file)
@@ -103,9 +103,6 @@ static void test_proxy_g_signal (GDBusProxy* proxy,
                           const gchar* sender_name,
                           const gchar* signal_name,
                           GVariant* parameters);
-static void _vala_g_async_ready_callback (GObject *source_object,
-                                   GAsyncResult *res,
-                                   void *user_data);
 static void test_proxy_test_array_lifetime_async (Test* self,
                                            gchar** items,
                                            gint items_length1,
@@ -252,15 +249,6 @@ test_proxy_init (TestProxy* self)
        g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_test_dbus_interface_info));
 }
 
-static void
-_vala_g_async_ready_callback (GObject *source_object,
-                              GAsyncResult *res,
-                              void *user_data)
-{
-       g_task_return_pointer (user_data, g_object_ref (res), g_object_unref);
-       g_object_unref (user_data);
-}
-
 static void
 test_proxy_test_array_lifetime_async (Test* self,
                                       gchar** items,
@@ -268,14 +256,10 @@ test_proxy_test_array_lifetime_async (Test* self,
                                       GAsyncReadyCallback _callback_,
                                       gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
        gchar** _tmp0_;
        GVariantBuilder _tmp1_;
        gint _tmp2_;
-       G_IO_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", "TestArrayLifetime");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        _tmp0_ = items;
        g_variant_builder_init (&_tmp1_, G_VARIANT_TYPE ("as"));
@@ -284,15 +268,7 @@ test_proxy_test_array_lifetime_async (Test* self,
                _tmp0_++;
        }
        g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp1_));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "TestArrayLifetime", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static gchar*
@@ -300,28 +276,19 @@ test_proxy_test_array_lifetime_finish (Test* self,
                                        GAsyncResult* _res_,
                                        GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
        GVariantIter _reply_iter;
        gchar* _result = NULL;
        GVariant* _tmp3_;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return NULL;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _tmp3_ = g_variant_iter_next_value (&_reply_iter);
        _result = g_variant_dup_string (_tmp3_, NULL);
        g_variant_unref (_tmp3_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 55585c18107dd5a9da65949a693ed9ae93680b45..87d7da7aa85b079c4537e2f13172d2ba6d036618 100644 (file)
@@ -284,73 +284,41 @@ static void
 ifoo_proxy_method0 (IFoo* self,
                     GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        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.IFoo", "Method0");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Method0", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
 ifoo_proxy_method1 (IFoo* self,
                     GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
-       G_DBUS_ERROR;
-       G_IO_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.IFoo", "Method1");
        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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Method1", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
 ifoo_proxy_method2 (IFoo* self)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        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.IFoo", "Method2");
        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, NULL);
-       g_object_unref (_message);
-       if (!_reply_message) {
-               return;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, NULL)) {
-               g_object_unref (_reply_message);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Method2", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
index 989551a7f597435f99ee80560ecaef004c0995bf..fbc9a5bcfc207f703f8a5fa0ce998c544b320d88 100644 (file)
@@ -172,37 +172,22 @@ static gint
 test_proxy_get_test (Test* self,
                      GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gint _result = 0;
-       GVariant* _tmp2_;
-       G_DBUS_ERROR;
-       G_IO_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", "GetTest");
+       GVariant* _tmp1_;
        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) {
-               gint _tmp0_ = 0;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "GetTest", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
-       _result = g_variant_get_int32 (_tmp2_);
-       g_variant_unref (_tmp2_);
-       g_object_unref (_reply_message);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _result = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 393a102a1bead2270445899a2c5f097420931de3..fdb305a2d1a5c942b58a8a000709dd0bcdde1490 100644 (file)
@@ -213,11 +213,8 @@ static GHashTable*
 test_proxy_test_dict (Test* self,
                       GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        GHashTable* _result = NULL;
        GVariant* _tmp0_;
@@ -225,21 +222,11 @@ test_proxy_test_dict (Test* self,
        GVariantIter _tmp2_;
        GVariant* _tmp3_;
        GVariant* _tmp4_;
-       G_IO_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", "TestDict");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestDict", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _tmp0_ = g_variant_iter_next_value (&_reply_iter);
        _tmp1_ = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_variant_unref);
@@ -249,7 +236,7 @@ test_proxy_test_dict (Test* self,
        }
        _result = _tmp1_;
        g_variant_unref (_tmp0_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -257,34 +244,21 @@ static GVariantDict*
 test_proxy_test_variant_dict (Test* self,
                               GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        GVariantDict* _result = NULL;
        GVariant* _tmp5_;
-       G_IO_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", "TestVariantDict");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestVariantDict", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _tmp5_ = g_variant_iter_next_value (&_reply_iter);
        _result = g_variant_dict_new (_tmp5_);
        g_variant_unref (_tmp5_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 06795f64354a7bb7310f2acff51b87718dbcfaef..5a5b6c4996b4ecb021d51243b290ba1fa1d0bd80 100644 (file)
@@ -589,11 +589,8 @@ static GHashTable*
 test_interface_bar_proxy_foo (TestInterfaceBar* self,
                               GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        GHashTable* _result = NULL;
        GVariant* _tmp4_;
@@ -601,21 +598,11 @@ test_interface_bar_proxy_foo (TestInterfaceBar* self,
        GVariantIter _tmp6_;
        GVariant* _tmp7_;
        GVariant* _tmp8_;
-       G_IO_ERROR;
-       _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.vala.Test.Bar", "Foo");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Foo", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _tmp5_ = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_variant_unref);
@@ -625,7 +612,7 @@ test_interface_bar_proxy_foo (TestInterfaceBar* self,
        }
        _result = _tmp5_;
        g_variant_unref (_tmp4_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 5d45b28a9e7884e0b38b80069a02a6b11e5f4a09..b29ca30ead4de3a80a4e1dbe1e445edf11582434 100644 (file)
@@ -48,10 +48,10 @@ struct _RunData {
        gchar* s;
        gint i;
        GDBusProxy* _tmp5_;
-       gchar* _tmp10_;
-       gint _tmp11_;
-       const gchar* _tmp12_;
-       GMainLoop* _tmp13_;
+       gchar* _tmp9_;
+       gint _tmp10_;
+       const gchar* _tmp11_;
+       GMainLoop* _tmp12_;
        GError* _inner_error0_;
 };
 
@@ -119,42 +119,29 @@ _dynamic_do_foo0 (GDBusProxy* self,
                   gchar** param2,
                   GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gchar* _vala_param2 = NULL;
-       GVariant* _tmp8_;
+       GVariant* _tmp7_;
        gint _result = 0;
-       GVariant* _tmp9_;
-       _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), g_dbus_proxy_get_interface_name ((GDBusProxy *) self), "do_foo");
+       GVariant* _tmp8_;
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (param1));
-       _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 _tmp6_ = 0;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "do_foo", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp6_ = -1;
                return _tmp6_;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               gint _tmp7_ = 0;
-               g_object_unref (_reply_message);
-               return _tmp7_;
-       }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
+       _tmp7_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_param2 = g_variant_dup_string (_tmp7_, NULL);
+       g_variant_unref (_tmp7_);
+       *param2 = _vala_param2;
        _tmp8_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_param2 = g_variant_dup_string (_tmp8_, NULL);
+       _result = g_variant_get_int32 (_tmp8_);
        g_variant_unref (_tmp8_);
-       *param2 = _vala_param2;
-       _tmp9_ = g_variant_iter_next_value (&_reply_iter);
-       _result = g_variant_get_int32 (_tmp9_);
-       g_variant_unref (_tmp9_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -196,11 +183,11 @@ run_co (RunData* _data_)
                        goto __catch0_g_error;
                }
                _data_->_tmp5_ = _data_->test;
-               _data_->_tmp10_ = NULL;
-               _data_->_tmp11_ = _dynamic_do_foo0 (_data_->_tmp5_, 42, &_data_->_tmp10_, &_data_->_inner_error0_);
+               _data_->_tmp9_ = NULL;
+               _data_->_tmp10_ = _dynamic_do_foo0 (_data_->_tmp5_, 42, &_data_->_tmp9_, &_data_->_inner_error0_);
                _g_free0 (_data_->s);
-               _data_->s = _data_->_tmp10_;
-               _data_->i = _data_->_tmp11_;
+               _data_->s = _data_->_tmp9_;
+               _data_->i = _data_->_tmp10_;
                if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
                        _g_free0 (_data_->s);
                        _g_object_unref0 (_data_->test);
@@ -208,8 +195,8 @@ run_co (RunData* _data_)
                        goto __catch0_g_error;
                }
                _vala_assert (_data_->i == 23, "i == 23");
-               _data_->_tmp12_ = _data_->s;
-               _vala_assert (g_strcmp0 (_data_->_tmp12_, "foo") == 0, "s == \"foo\"");
+               _data_->_tmp11_ = _data_->s;
+               _vala_assert (g_strcmp0 (_data_->_tmp11_, "foo") == 0, "s == \"foo\"");
                _g_free0 (_data_->s);
                _g_object_unref0 (_data_->test);
                _g_object_unref0 (_data_->bus);
@@ -226,8 +213,8 @@ run_co (RunData* _data_)
                g_object_unref (_data_->_async_result);
                return FALSE;
        }
-       _data_->_tmp13_ = main_loop;
-       g_main_loop_quit (_data_->_tmp13_);
+       _data_->_tmp12_ = main_loop;
+       g_main_loop_quit (_data_->_tmp12_);
        g_task_return_pointer (_data_->_async_result, _data_, NULL);
        if (_data_->_state_ != 0) {
                while (!g_task_get_completed (_data_->_async_result)) {
index 9b3aff152761fe2e0eba14e3f85ebb8f5e5d89c3..4abb3840b4facccc4eb931dd54592f3fb78f2ad1 100644 (file)
@@ -104,9 +104,6 @@ static void test_proxy_g_signal (GDBusProxy* proxy,
                           const gchar* sender_name,
                           const gchar* signal_name,
                           GVariant* parameters);
-static void _vala_g_async_ready_callback (GObject *source_object,
-                                   GAsyncResult *res,
-                                   void *user_data);
 static void test_proxy_test1_async (Test* self,
                              FooEnum e,
                              GAsyncReadyCallback _callback_,
@@ -394,37 +391,16 @@ test_proxy_init (TestProxy* self)
        g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_test_dbus_interface_info));
 }
 
-static void
-_vala_g_async_ready_callback (GObject *source_object,
-                              GAsyncResult *res,
-                              void *user_data)
-{
-       g_task_return_pointer (user_data, g_object_ref (res), g_object_unref);
-       g_object_unref (user_data);
-}
-
 static void
 test_proxy_test1_async (Test* self,
                         FooEnum e,
                         GAsyncReadyCallback _callback_,
                         gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_DBUS_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", "Test1");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (foo_enum_to_string (e)));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "Test1", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static void
@@ -432,19 +408,12 @@ test_proxy_test1_finish (Test* self,
                          GAsyncResult* _res_,
                          GError** error)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
+       GVariant *_reply;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, error);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -452,26 +421,15 @@ test_proxy_test2 (Test* self,
                   FooEnum e,
                   GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
-       G_DBUS_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", "Test2");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (foo_enum_to_string (e)));
-       _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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Test2", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -481,53 +439,32 @@ test_proxy_test3 (Test* self,
                   FooEnum e2,
                   GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
-       G_DBUS_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", "Test3");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (foo_enum_to_string (e1)));
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (fd));
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (foo_enum_to_string (e2)));
-       _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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Test3", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
 test_proxy_test4 (Test* self,
                   FooEnum e)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        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", "Test4");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (foo_enum_to_string (e)));
-       _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, NULL);
-       g_object_unref (_message);
-       if (!_reply_message) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Test4", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, NULL)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -536,40 +473,22 @@ test_proxy_test5_async (Test* self,
                         GAsyncReadyCallback _callback_,
                         gpointer _user_data_)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       _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", "Test5");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (foo_enum_to_string (e)));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "Test5", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, _callback_, _user_data_);
 }
 
 static void
 test_proxy_test5_finish (Test* self,
                          GAsyncResult* _res_)
 {
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, NULL);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
+       GVariant *_reply;
+       _reply = g_dbus_proxy_call_finish ((GDBusProxy *) self, _res_, NULL);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, NULL)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
index 8d11968ace40524983420a80ffe416fc682796b1..d081a115cc4fefa4d3944e8d974bf8baa4a3886d 100644 (file)
@@ -308,24 +308,14 @@ static void
 test_proxy_test_void (Test* self,
                       GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestVoid", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static gint
@@ -334,42 +324,29 @@ test_proxy_test_int (Test* self,
                      gint* j,
                      GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gint _vala_j = 0;
-       GVariant* _tmp2_;
+       GVariant* _tmp1_;
        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");
+       GVariant* _tmp2_;
        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;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestInt", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_j = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       *j = _vala_j;
        _tmp2_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_j = g_variant_get_int32 (_tmp2_);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -379,40 +356,28 @@ test_proxy_test_string (Test* self,
                         gchar** t,
                         GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gchar* _vala_t = NULL;
-       GVariant* _tmp4_;
+       GVariant* _tmp3_;
        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");
+       GVariant* _tmp4_;
        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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestString", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
+       _tmp3_ = g_variant_iter_next_value (&_reply_iter);
+       _vala_t = g_variant_dup_string (_tmp3_, NULL);
+       g_variant_unref (_tmp3_);
+       *t = _vala_t;
        _tmp4_ = g_variant_iter_next_value (&_reply_iter);
-       _vala_t = g_variant_dup_string (_tmp4_, NULL);
+       _result = 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);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -421,49 +386,29 @@ test_proxy_test_cancellable (Test* self,
                              GCancellable* cancellable,
                              GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestCancellable", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, cancellable, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
 test_proxy_test_custom_error (Test* self,
                               GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestCustomError", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -509,16 +454,16 @@ _dbus_test_test_int (Test* self,
        GError* error = NULL;
        GVariantIter _arguments_iter;
        gint i = 0;
-       GVariant* _tmp6_;
+       GVariant* _tmp5_;
        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_);
+       _tmp5_ = g_variant_iter_next_value (&_arguments_iter);
+       i = g_variant_get_int32 (_tmp5_);
+       g_variant_unref (_tmp5_);
        result = test_test_int (self, i, &j, &error);
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
@@ -543,16 +488,16 @@ _dbus_test_test_string (Test* self,
        GError* error = NULL;
        GVariantIter _arguments_iter;
        gchar* s = NULL;
-       GVariant* _tmp7_;
+       GVariant* _tmp6_;
        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_);
+       _tmp6_ = g_variant_iter_next_value (&_arguments_iter);
+       s = g_variant_dup_string (_tmp6_, NULL);
+       g_variant_unref (_tmp6_);
        result = test_test_string (self, s, &t, &error);
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
index f44e0d3dfb6f9a1dd8a38fa0c0e8d74babca0d2a..0e8666a7aecff5d524eca8a1e946ec92710d9db0 100644 (file)
@@ -139,9 +139,6 @@ static void test_proxy_g_signal (GDBusProxy* proxy,
                           const gchar* sender_name,
                           const gchar* signal_name,
                           GVariant* parameters);
-static void _vala_g_async_ready_callback (GObject *source_object,
-                                   GAsyncResult *res,
-                                   void *user_data);
 static void test_proxy_test_in_async (Test* self,
                                GUnixInputStream* i,
                                GAsyncReadyCallback _callback_,
@@ -283,15 +280,6 @@ test_proxy_init (TestProxy* self)
        g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_test_dbus_interface_info));
 }
 
-static void
-_vala_g_async_ready_callback (GObject *source_object,
-                              GAsyncResult *res,
-                              void *user_data)
-{
-       g_task_return_pointer (user_data, g_object_ref (res), g_object_unref);
-       g_object_unref (user_data);
-}
-
 static void
 test_proxy_test_in_async (Test* self,
                           GUnixInputStream* i,
@@ -299,25 +287,12 @@ test_proxy_test_in_async (Test* self,
                           gpointer _user_data_)
 {
        GUnixFDList* _fd_list;
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_IO_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", "TestIn");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        _fd_list = g_unix_fd_list_new ();
        g_variant_builder_add (&_arguments_builder, "h", g_unix_fd_list_append (_fd_list, g_unix_input_stream_get_fd (i), NULL));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       g_dbus_message_set_unix_fd_list (_message, _fd_list);
+       g_dbus_proxy_call_with_unix_fd_list ((GDBusProxy *) self, "TestIn", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, _fd_list, NULL, _callback_, _user_data_);
        g_object_unref (_fd_list);
-       if (_callback_ != NULL) {
-               g_dbus_connection_send_message_with_reply (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, _vala_g_async_ready_callback, g_task_new ((GObject *) self, NULL, _callback_, _user_data_));
-       } else {
-               g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-               g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
-       }
-       g_object_unref (_message);
 }
 
 static GUnixInputStream*
@@ -327,56 +302,55 @@ test_proxy_test_in_finish (Test* self,
                            GError** error)
 {
        GUnixFDList* _fd_list;
-       GAsyncResult *_inner_res;
-       GDBusMessage *_reply_message;
+       GUnixFDList* _out_fd_list;
+       GVariant *_reply;
        gint _fd_index = 0;
        gint _fd;
-       GVariant *_reply;
        GVariantIter _reply_iter;
        GUnixInputStream* _vala_j = NULL;
        GUnixInputStream* _result = NULL;
-       _inner_res = g_task_propagate_pointer ((GTask *) _res_, NULL);
-       _reply_message = g_dbus_connection_send_message_with_reply_finish (g_dbus_proxy_get_connection ((GDBusProxy *) self), _inner_res, error);
-       g_object_unref (_inner_res);
-       if (!_reply_message) {
-               return NULL;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
+       _reply = g_dbus_proxy_call_with_unix_fd_list_finish ((GDBusProxy *) self, &_out_fd_list, _res_, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
-       _fd_list = g_dbus_message_get_unix_fd_list (_reply_message);
-       if (_fd_list) {
+       if (_out_fd_list) {
                g_variant_iter_next (&_reply_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, error);
+               _fd = g_unix_fd_list_get (_out_fd_list, _fd_index, error);
                if (_fd >= 0) {
                        _vala_j = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        *j = _vala_j;
        if (error && (*error)) {
-               g_object_unref (_reply_message);
+               g_variant_unref (_reply);
+               if (_out_fd_list) {
+                       g_object_unref (_out_fd_list);
+               }
                return NULL;
        }
-       _fd_list = g_dbus_message_get_unix_fd_list (_reply_message);
-       if (_fd_list) {
+       if (_out_fd_list) {
                g_variant_iter_next (&_reply_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, error);
+               _fd = g_unix_fd_list_get (_out_fd_list, _fd_index, error);
                if (_fd >= 0) {
                        _result = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error && (*error)) {
-               g_object_unref (_reply_message);
+               g_variant_unref (_reply);
+               if (_out_fd_list) {
+                       g_object_unref (_out_fd_list);
+               }
                return NULL;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
+       if (_out_fd_list) {
+               g_object_unref (_out_fd_list);
+       }
        return _result;
 }
 
@@ -401,15 +375,14 @@ _dbus_test_test_in (Test* self,
        g_variant_iter_init (&_arguments_iter, _parameters_);
        _ready_data = g_slice_new0 (TestTestInReadyData);
        _ready_data->_invocation_ = invocation;
-       _fd_list = g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation));
-       if (_fd_list) {
+       if (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))) {
                g_variant_iter_next (&_arguments_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, &error);
+               _fd = g_unix_fd_list_get (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)), _fd_index, &error);
                if (_fd >= 0) {
                        _ready_data->i = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
index 18398eb4509dbdd6b08da51af123c3e62b84dee2..85747e498099843dca947e6ca0cae0c38e140b02 100644 (file)
@@ -430,15 +430,14 @@ _dbus_test_test_in (Test* self,
        g_variant_iter_init (&_arguments_iter, _parameters_);
        _ready_data = g_slice_new0 (TestTestInReadyData);
        _ready_data->_invocation_ = invocation;
-       _fd_list = g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation));
-       if (_fd_list) {
+       if (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))) {
                g_variant_iter_next (&_arguments_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, &error);
+               _fd = g_unix_fd_list_get (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)), _fd_index, &error);
                if (_fd >= 0) {
                        _ready_data->i = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
index dfb17b9a0beaa6f1d8060a3f6f9f60a188c37441..01444ac446b848288c50bbdc0a61182c0c61a67e 100644 (file)
@@ -183,40 +183,30 @@ test_proxy_test (Test* self,
                  GError** error)
 {
        GUnixFDList* _fd_list;
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GUnixFDList* _out_fd_list;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        gint _fd_index = 0;
        gint _fd;
-       GVariant *_reply;
        GVariantIter _reply_iter;
        gchar* _result = NULL;
        GVariant* _tmp0_;
-       G_IO_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", "Test");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        _fd_list = g_unix_fd_list_new ();
        g_variant_builder_add (&_arguments_builder, "h", g_unix_fd_list_append (_fd_list, g_unix_output_stream_get_fd (output_stream), NULL));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       g_dbus_message_set_unix_fd_list (_message, _fd_list);
+       _reply = g_dbus_proxy_call_with_unix_fd_list_sync ((GDBusProxy *) self, "Test", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, _fd_list, &_out_fd_list, NULL, error);
        g_object_unref (_fd_list);
-       _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);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _tmp0_ = g_variant_iter_next_value (&_reply_iter);
        _result = g_variant_dup_string (_tmp0_, NULL);
        g_variant_unref (_tmp0_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
+       if (_out_fd_list) {
+               g_object_unref (_out_fd_list);
+       }
        return _result;
 }
 
@@ -242,15 +232,14 @@ _dbus_test_test (Test* self,
        GVariantBuilder _reply_builder;
        gchar* result;
        g_variant_iter_init (&_arguments_iter, _parameters_);
-       _fd_list = g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation));
-       if (_fd_list) {
+       if (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))) {
                g_variant_iter_next (&_arguments_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, &error);
+               _fd = g_unix_fd_list_get (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)), _fd_index, &error);
                if (_fd >= 0) {
                        output_stream = (GUnixOutputStream *) g_unix_output_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
index dcdc4ae87537699161cc3fbfd318e845234e8d5d..41b7e57d4c2f334a619e8b21d47d91e6aaecdc6c 100644 (file)
@@ -225,15 +225,14 @@ _dbus_test_test (Test* self,
        GVariant* _reply;
        GVariantBuilder _reply_builder;
        g_variant_iter_init (&_arguments_iter, _parameters_);
-       _fd_list = g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation));
-       if (_fd_list) {
+       if (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))) {
                g_variant_iter_next (&_arguments_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, &error);
+               _fd = g_unix_fd_list_get (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)), _fd_index, &error);
                if (_fd >= 0) {
                        output_stream = (GUnixOutputStream *) g_unix_output_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
index abefbc0e06fb63dafd9327e1428557e01e864c19..a4b0f690824a964133d805c2f468e08b8d85e245 100644 (file)
@@ -186,66 +186,60 @@ test_proxy_test_in (Test* self,
                     GError** error)
 {
        GUnixFDList* _fd_list;
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GUnixFDList* _out_fd_list;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        gint _fd_index = 0;
        gint _fd;
-       GVariant *_reply;
        GVariantIter _reply_iter;
        GUnixInputStream* _vala_j = NULL;
        GUnixInputStream* _result = NULL;
-       G_IO_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", "TestIn");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        _fd_list = g_unix_fd_list_new ();
        g_variant_builder_add (&_arguments_builder, "h", g_unix_fd_list_append (_fd_list, g_unix_input_stream_get_fd (i), NULL));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       g_dbus_message_set_unix_fd_list (_message, _fd_list);
+       _reply = g_dbus_proxy_call_with_unix_fd_list_sync ((GDBusProxy *) self, "TestIn", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, _fd_list, &_out_fd_list, NULL, error);
        g_object_unref (_fd_list);
-       _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);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
-       _fd_list = g_dbus_message_get_unix_fd_list (_reply_message);
-       if (_fd_list) {
+       if (_out_fd_list) {
                g_variant_iter_next (&_reply_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, error);
+               _fd = g_unix_fd_list_get (_out_fd_list, _fd_index, error);
                if (_fd >= 0) {
                        _vala_j = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        *j = _vala_j;
        if (error && (*error)) {
-               g_object_unref (_reply_message);
+               g_variant_unref (_reply);
+               if (_out_fd_list) {
+                       g_object_unref (_out_fd_list);
+               }
                return NULL;
        }
-       _fd_list = g_dbus_message_get_unix_fd_list (_reply_message);
-       if (_fd_list) {
+       if (_out_fd_list) {
                g_variant_iter_next (&_reply_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, error);
+               _fd = g_unix_fd_list_get (_out_fd_list, _fd_index, error);
                if (_fd >= 0) {
                        _result = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error && (*error)) {
-               g_object_unref (_reply_message);
+               g_variant_unref (_reply);
+               if (_out_fd_list) {
+                       g_object_unref (_out_fd_list);
+               }
                return NULL;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
+       if (_out_fd_list) {
+               g_object_unref (_out_fd_list);
+       }
        return _result;
 }
 
@@ -272,15 +266,14 @@ _dbus_test_test_in (Test* self,
        GUnixInputStream* j = NULL;
        GUnixInputStream* result;
        g_variant_iter_init (&_arguments_iter, _parameters_);
-       _fd_list = g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation));
-       if (_fd_list) {
+       if (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))) {
                g_variant_iter_next (&_arguments_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, &error);
+               _fd = g_unix_fd_list_get (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)), _fd_index, &error);
                if (_fd >= 0) {
                        i = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
index b616d9bbcb2ec087b7d681ef4928b1bc0510b304..880eef4de6fdf4ee224066bc8f3adff6f1177e7d 100644 (file)
@@ -321,15 +321,14 @@ _dbus_test_test_in (Test* self,
        GUnixInputStream* j = NULL;
        GUnixInputStream* result;
        g_variant_iter_init (&_arguments_iter, _parameters_);
-       _fd_list = g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation));
-       if (_fd_list) {
+       if (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))) {
                g_variant_iter_next (&_arguments_iter, "h", &_fd_index);
-               _fd = g_unix_fd_list_get (_fd_list, _fd_index, &error);
+               _fd = g_unix_fd_list_get (g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)), _fd_index, &error);
                if (_fd >= 0) {
                        i = (GUnixInputStream *) g_unix_input_stream_new (_fd, TRUE);
                }
        } else {
-               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "FD List is NULL");
+               g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "No file descriptor returned");
        }
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
index 757b763ce54b0553ee60c01ee08314c266e070b4..17656edf4b624e5b200ceae34cd81aeb0c22e6e1 100644 (file)
@@ -179,37 +179,22 @@ static gint
 test_proxy_get_test (Test* self,
                      GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gint _result = 0;
-       GVariant* _tmp2_;
-       G_DBUS_ERROR;
-       G_IO_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", "GetTest");
+       GVariant* _tmp1_;
        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) {
-               gint _tmp0_ = 0;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "GetTest", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp0_ = -1;
                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);
-       _result = g_variant_get_int32 (_tmp2_);
-       g_variant_unref (_tmp2_);
-       g_object_unref (_reply_message);
+       _tmp1_ = g_variant_iter_next_value (&_reply_iter);
+       _result = g_variant_get_int32 (_tmp1_);
+       g_variant_unref (_tmp1_);
+       g_variant_unref (_reply);
        return _result;
 }
 
index be387f8f65be824b9e313e0b9a874597defd112b..3b91069535c2124f18689d8ae6b7ac1d95007a65 100644 (file)
@@ -326,11 +326,8 @@ test_proxy_list_messages (Test* self,
                           gint* result_length1,
                           GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gchar** _result = NULL;
        gint _result_length1;
@@ -341,21 +338,11 @@ test_proxy_list_messages (Test* self,
        gint _tmp1__length1;
        GVariantIter _tmp2_;
        GVariant* _tmp3_;
-       G_IO_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", "ListMessages");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "ListMessages", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                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);
        _result_length1 = 0;
        _tmp0_ = g_variant_iter_next_value (&_reply_iter);
@@ -377,7 +364,7 @@ test_proxy_list_messages (Test* self,
        _result = _tmp1_;
        g_variant_unref (_tmp0_);
        *result_length1 = _result_length1;
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -386,26 +373,15 @@ test_proxy_post_message (Test* self,
                          const gchar* message,
                          GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
-       G_IO_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", "PostMessage");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (message));
-       _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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "PostMessage", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -413,18 +389,10 @@ test_proxy_post_message_no_reply (Test* self,
                                   const gchar* message,
                                   GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
        GVariantBuilder _arguments_builder;
-       G_IO_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", "PostMessageNoReply");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (message));
-       _arguments = g_variant_builder_end (&_arguments_builder);
-       g_dbus_message_set_body (_message, _arguments);
-       g_dbus_message_set_flags (_message, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED);
-       g_dbus_connection_send_message (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, error);
-       g_object_unref (_message);
+       g_dbus_proxy_call ((GDBusProxy *) self, "PostMessageNoReply", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL, NULL);
 }
 
 static void
index c9ecd405d5f762d7f13d31f6891ba4e3a663b2c6..f2094788399ecad44cc49bd5c7f35ab59dbba451 100644 (file)
@@ -256,24 +256,14 @@ test_proxy_init (TestProxy* self)
 static void
 test_proxy_verify (Test* self)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        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", "Verify");
        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, NULL);
-       g_object_unref (_message);
-       if (!_reply_message) {
-               return;
-       }
-       if (g_dbus_message_to_gerror (_reply_message, NULL)) {
-               g_object_unref (_reply_message);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "Verify", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
+       if (!_reply) {
                return;
        }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static gint
index 63c9315f4f3d81bb05840b7a4601a837b9cd710f..bf906958a2d227febc7806d27d0f66a1dec1eaef 100644 (file)
@@ -388,38 +388,24 @@ test_proxy_test_method (Test* self,
                         gint k,
                         GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        gint _result = 0;
-       GVariant* _tmp3_;
-       G_IO_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", "TestMethod");
+       GVariant* _tmp2_;
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (j));
        g_variant_builder_add_value (&_arguments_builder, g_variant_new_int32 (k));
-       _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 _tmp1_ = 0;
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestMethod", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
+               gint _tmp1_ = -1;
                return _tmp1_;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               gint _tmp2_ = 0;
-               g_object_unref (_reply_message);
-               return _tmp2_;
-       }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
-       _tmp3_ = g_variant_iter_next_value (&_reply_iter);
-       _result = g_variant_get_int32 (_tmp3_);
-       g_variant_unref (_tmp3_);
-       g_object_unref (_reply_message);
+       _tmp2_ = g_variant_iter_next_value (&_reply_iter);
+       _result = g_variant_get_int32 (_tmp2_);
+       g_variant_unref (_tmp2_);
+       g_variant_unref (_reply);
        return _result;
 }
 
@@ -486,20 +472,20 @@ _dbus_test_test_method (Test* self,
        GError* error = NULL;
        GVariantIter _arguments_iter;
        gint j = 0;
-       GVariant* _tmp4_;
+       GVariant* _tmp3_;
        gint k = 0;
-       GVariant* _tmp5_;
+       GVariant* _tmp4_;
        GDBusMessage* _reply_message = NULL;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
        gint result;
        g_variant_iter_init (&_arguments_iter, _parameters_);
+       _tmp3_ = g_variant_iter_next_value (&_arguments_iter);
+       j = g_variant_get_int32 (_tmp3_);
+       g_variant_unref (_tmp3_);
        _tmp4_ = g_variant_iter_next_value (&_arguments_iter);
-       j = g_variant_get_int32 (_tmp4_);
+       k = g_variant_get_int32 (_tmp4_);
        g_variant_unref (_tmp4_);
-       _tmp5_ = g_variant_iter_next_value (&_arguments_iter);
-       k = g_variant_get_int32 (_tmp5_);
-       g_variant_unref (_tmp5_);
        result = test_test_method (self, j, k, &error);
        if (error) {
                g_dbus_method_invocation_take_error (invocation, error);
@@ -760,33 +746,20 @@ test_raw_proxy_test_method (TestRaw* self,
                             GVariant* k,
                             GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
-       GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
        GVariant *_reply;
+       GVariantBuilder _arguments_builder;
        GVariantIter _reply_iter;
        GVariant* _result = NULL;
-       G_IO_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", "TestMethod");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_arguments_builder, j);
        g_variant_builder_add_value (&_arguments_builder, k);
-       _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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestMethod", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return NULL;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _result = g_variant_iter_next_value (&_reply_iter);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
        return _result;
 }
 
index 567b653efa9625398c3e3822124eb526355ede31..dbf4831a0d5df8171595a00450aac216bf6ec296 100644 (file)
@@ -345,27 +345,15 @@ test_proxy_do_foo (Test* self,
                    gint i,
                    GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
-       GDBusMessage *_reply_message;
-       G_DBUS_ERROR;
-       G_IO_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", "DoFoo");
        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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "DoFoo", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
@@ -374,16 +362,11 @@ test_proxy_do_bar (Test* self,
                    gint baz_length1,
                    GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
        gchar** _tmp5_;
        GVariantBuilder _tmp6_;
        gint _tmp7_;
-       GDBusMessage *_reply_message;
-       G_DBUS_ERROR;
-       G_IO_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", "DoBar");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        _tmp5_ = baz;
        g_variant_builder_init (&_tmp6_, G_VARIANT_TYPE ("as"));
@@ -392,18 +375,11 @@ test_proxy_do_bar (Test* self,
                _tmp5_++;
        }
        g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp6_));
-       _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) {
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "DoBar", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       if (g_dbus_message_to_gerror (_reply_message, error)) {
-               g_object_unref (_reply_message);
-               return;
-       }
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void
index 9be666981638bbb8026ded34c8c2b570500b8a2e..83e7f119e533809ef1ea1b0995ff57670f73b5b8 100644 (file)
@@ -313,12 +313,9 @@ test_proxy_test_struct (Test* self,
                         FooStruct* result,
                         GError** error)
 {
-       GDBusMessage *_message;
-       GVariant *_arguments;
+       GVariant *_reply;
        GVariantBuilder _arguments_builder;
        GVariantBuilder _tmp0_;
-       GDBusMessage *_reply_message;
-       GVariant *_reply;
        GVariantIter _reply_iter;
        FooStruct _vala_g = {0};
        GVariant* _tmp1_;
@@ -331,25 +328,15 @@ test_proxy_test_struct (Test* self,
        GVariantIter _tmp8_;
        GVariant* _tmp9_;
        GVariant* _tmp10_;
-       G_IO_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", "TestStruct");
        g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_init (&_tmp0_, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_tmp0_, g_variant_new_int32 ((*f).i));
        g_variant_builder_add_value (&_tmp0_, g_variant_new_string ((*f).s));
        g_variant_builder_add_value (&_arguments_builder, g_variant_builder_end (&_tmp0_));
-       _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);
+       _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "TestStruct", g_variant_builder_end (&_arguments_builder), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+       if (!_reply) {
                return;
        }
-       _reply = g_dbus_message_get_body (_reply_message);
        g_variant_iter_init (&_reply_iter, _reply);
        _tmp1_ = g_variant_iter_next_value (&_reply_iter);
        g_variant_iter_init (&_tmp3_, _tmp1_);
@@ -372,7 +359,7 @@ test_proxy_test_struct (Test* self,
        g_variant_unref (_tmp10_);
        *result = _tmp7_;
        g_variant_unref (_tmp6_);
-       g_object_unref (_reply_message);
+       g_variant_unref (_reply);
 }
 
 static void