From 4123914c1eecf16696d53cc25367440c221be94d Mon Sep 17 00:00:00 2001 From: Rico Tzschichholz Date: Sat, 24 Sep 2016 10:03:14 +0200 Subject: gio-2.0: Fix async constructors of DBusConnection, DBusObjectManagerClient and DBusProxy --- vapi/gio-2.0.vapi | 38 ++++++++++++++++---------------------- vapi/metadata/Gio-2.0-custom.vala | 20 +------------------- vapi/metadata/Gio-2.0.metadata | 16 ---------------- 3 files changed, 17 insertions(+), 57 deletions(-) diff --git a/vapi/gio-2.0.vapi b/vapi/gio-2.0.vapi index 9a16fd7da..40ea96559 100644 --- a/vapi/gio-2.0.vapi +++ b/vapi/gio-2.0.vapi @@ -613,11 +613,11 @@ namespace GLib { public signal bool allow_mechanism (string mechanism); public virtual signal bool authorize_authenticated_peer (GLib.IOStream stream, GLib.Credentials? credentials); } - [CCode (cheader_filename = "gio/gio.h")] + [CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_connection_get_type ()")] [Version (since = "2.26")] public class DBusConnection : GLib.Object, GLib.AsyncInitable, GLib.Initable, GLib.AsyncInitable, GLib.Initable { - [CCode (has_construct_function = false)] - protected DBusConnection (); + [CCode (cname = "g_dbus_connection_new", has_construct_function = false)] + public async DBusConnection (GLib.IOStream stream, string? guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error; public uint add_filter (owned GLib.DBusMessageFilterFunction filter_function); public async GLib.Variant call (string? bus_name, string object_path, string interface_name, string method_name, GLib.Variant? parameters, GLib.VariantType? reply_type, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error; public GLib.Variant call_sync (string? bus_name, string object_path, string interface_name, string method_name, GLib.Variant? parameters, GLib.VariantType? reply_type, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error; @@ -634,6 +634,8 @@ namespace GLib { public uint export_menu_model (string object_path, GLib.MenuModel menu) throws GLib.Error; public async bool flush (GLib.Cancellable? cancellable = null) throws GLib.Error; public bool flush_sync (GLib.Cancellable? cancellable = null) throws GLib.Error; + [CCode (cname = "g_dbus_connection_new_for_address", has_construct_function = false)] + public async DBusConnection.for_address (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error; [CCode (has_construct_function = false)] public DBusConnection.for_address_sync (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error; public GLib.DBusCapabilityFlags get_capabilities (); @@ -647,10 +649,6 @@ namespace GLib { public unowned GLib.IOStream get_stream (); public unowned string get_unique_name (); public bool is_closed (); - [CCode (cname = "g_dbus_connection_new", finish_function = "g_dbus_connection_new_finish")] - public static async GLib.DBusConnection @new (GLib.IOStream stream, string guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error; - [CCode (cname = "g_dbus_connection_new_for_address", finish_function = "g_dbus_connection_new_for_address_finish")] - public static async GLib.DBusConnection new_for_address (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error; public uint register_object (string object_path, T object) throws GLib.IOError; [Version (since = "2.46")] public uint register_object_with_closures (string object_path, GLib.DBusInterfaceInfo interface_info, GLib.Closure? method_call_closure, GLib.Closure? get_property_closure, GLib.Closure? set_property_closure) throws GLib.Error; @@ -867,19 +865,17 @@ namespace GLib { } [CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_manager_client_get_type ()")] [Version (since = "2.30")] - public class DBusObjectManagerClient : GLib.Object, GLib.AsyncInitable, GLib.DBusObjectManager, GLib.Initable, GLib.AsyncInitable, GLib.DBusObjectManager, GLib.Initable { - [CCode (has_construct_function = false)] - protected DBusObjectManagerClient (); + public class DBusObjectManagerClient : GLib.Object, GLib.AsyncInitable, GLib.DBusObjectManager, GLib.Initable { + [CCode (cname = "g_dbus_object_manager_client_new", has_construct_function = false)] + public async DBusObjectManagerClient (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc? get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; + [CCode (cname = "g_dbus_object_manager_client_new_for_bus", has_construct_function = false)] + public async DBusObjectManagerClient.for_bus (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc? get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; [CCode (has_construct_function = false, type = "GDBusObjectManager*")] public DBusObjectManagerClient.for_bus_sync (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc? get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; public unowned GLib.DBusConnection get_connection (); public GLib.DBusObjectManagerClientFlags get_flags (); public unowned string get_name (); public string? get_name_owner (); - [CCode (cname = "g_dbus_object_manager_client_new", finish_function = "g_dbus_object_manager_client_new_finish")] - public static async GLib.DBusObjectManagerClient @new (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; - [CCode (cname = "g_dbus_object_manager_client_new_for_bus", finish_function = "g_dbus_object_manager_client_new_for_bus_finish")] - public static async GLib.DBusObjectManagerClient new_for_bus (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; [CCode (has_construct_function = false, type = "GDBusObjectManager*")] public DBusObjectManagerClient.sync (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string? name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc? get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; public GLib.BusType bus_type { construct; } @@ -952,19 +948,19 @@ namespace GLib { public GLib.DBusPropertyInfo @ref (); public void unref (); } - [CCode (cheader_filename = "gio/gio.h")] + [CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_proxy_get_type ()")] [Version (since = "2.26")] - public class DBusProxy : GLib.Object, GLib.AsyncInitable, GLib.DBusInterface, GLib.Initable, GLib.AsyncInitable, GLib.DBusInterface, GLib.Initable { - [CCode (has_construct_function = false)] - protected DBusProxy (); + public class DBusProxy : GLib.Object, GLib.AsyncInitable, GLib.DBusInterface, GLib.Initable { + [CCode (cname = "g_dbus_proxy_new", has_construct_function = false)] + public async DBusProxy (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string? name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error; public async GLib.Variant call (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error; public GLib.Variant call_sync (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error; [Version (since = "2.30")] public async GLib.Variant call_with_unix_fd_list (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.UnixFDList? fd_list = null, GLib.Cancellable? cancellable = null, out GLib.UnixFDList? out_fd_list = null) throws GLib.Error; [Version (since = "2.30")] public GLib.Variant call_with_unix_fd_list_sync (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.UnixFDList? fd_list = null, out GLib.UnixFDList? out_fd_list = null, GLib.Cancellable? cancellable = null) throws GLib.Error; - [CCode (cname = "g_dbus_proxy_new_for_bus", finish_function = "g_dbus_proxy_new_for_bus_finish")] - public static async GLib.DBusProxy create_for_bus (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.IOError; + [CCode (cname = "g_dbus_proxy_new_for_bus", has_construct_function = false)] + public async DBusProxy.for_bus (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error; [CCode (has_construct_function = false)] public DBusProxy.for_bus_sync (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error; public GLib.Variant get_cached_property (string property_name); @@ -978,8 +974,6 @@ namespace GLib { public unowned string get_name (); public string get_name_owner (); public unowned string get_object_path (); - [CCode (cname = "g_dbus_proxy_new", finish_function = "g_dbus_proxy_new_finish")] - public static async GLib.DBusProxy @new (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string? name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.IOError; public void set_cached_property (string property_name, GLib.Variant? value); public void set_default_timeout (int timeout_msec); public void set_interface_info (GLib.DBusInterfaceInfo? info); diff --git a/vapi/metadata/Gio-2.0-custom.vala b/vapi/metadata/Gio-2.0-custom.vala index 32beefd79..5b47c6d2c 100644 --- a/vapi/metadata/Gio-2.0-custom.vala +++ b/vapi/metadata/Gio-2.0-custom.vala @@ -31,11 +31,8 @@ namespace GLib { public void set_callback ([CCode (type = "GSourceFunc")] owned CancellableSourceFunc func); } + [CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_connection_get_type ()")] public class DBusConnection : GLib.Object, GLib.AsyncInitable, GLib.Initable { - [CCode (cname = "g_dbus_connection_new", finish_function = "g_dbus_connection_new_finish")] - public static async GLib.DBusConnection @new (GLib.IOStream stream, string guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error; - [CCode (cname = "g_dbus_connection_new_for_address", finish_function = "g_dbus_connection_new_for_address_finish")] - public static async GLib.DBusConnection @new_for_address (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error; public async T get_proxy (string? name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError; public T get_proxy_sync (string? name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError; public uint register_object (string object_path, T object) throws GLib.IOError; @@ -55,21 +52,6 @@ namespace GLib { public DBusMessage.method_reply (GLib.DBusMessage method_call_message); } - [CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_manager_client_get_type ()")] - public class DBusObjectManagerClient : GLib.Object, GLib.AsyncInitable, GLib.DBusObjectManager, GLib.Initable { - [CCode (cname = "g_dbus_object_manager_client_new", finish_function = "g_dbus_object_manager_client_new_finish")] - public static async GLib.DBusObjectManagerClient @new (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; - [CCode (cname = "g_dbus_object_manager_client_new_for_bus", finish_function = "g_dbus_object_manager_client_new_for_bus_finish")] - public static async GLib.DBusObjectManagerClient @new_for_bus (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error; - } - - public class DBusProxy : GLib.Object, GLib.AsyncInitable, GLib.DBusInterface, GLib.Initable { - [CCode (cname = "g_dbus_proxy_new", finish_function = "g_dbus_proxy_new_finish")] - public static async GLib.DBusProxy @new (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string? name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.IOError; - [CCode (cname = "g_dbus_proxy_new_for_bus", finish_function = "g_dbus_proxy_new_for_bus_finish")] - public static async GLib.DBusProxy create_for_bus (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.IOError; - } - public class DataInputStream : GLib.BufferedInputStream { [CCode (cname = "g_data_input_stream_read_line_async", finish_function = "g_data_input_stream_read_line_finish_utf8")] public async string? read_line_utf8_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null, out size_t length) throws GLib.IOError, GLib.IOError; diff --git a/vapi/metadata/Gio-2.0.metadata b/vapi/metadata/Gio-2.0.metadata index 1257ce3c1..e49698ef7 100644 --- a/vapi/metadata/Gio-2.0.metadata +++ b/vapi/metadata/Gio-2.0.metadata @@ -290,22 +290,6 @@ proxy_resolver_get_default skip simple_async_report_gerror_in_idle parent="GLib.SimpleAsyncResult" name="report_gerror_in_idle" tls_* skip -// Bug #659886: Async constuctors don't work -DBusConnection - .new skip - .new_finish skip - .new_for_address skip - .new_for_address_finish skip -DBusObjectManagerClient - .new skip - .new_finish skip - .new_for_bus skip - .new_for_bus_finish skip -DBusProxy - .new skip - .new_finish skip - .new_for_bus skip - .new_for_bus_finish skip AsyncInitable .new* skip .init_async#virtual_method virtual -- cgit v1.2.1