summaryrefslogtreecommitdiff
path: root/gabble
diff options
context:
space:
mode:
authorSiraj Razick <siraj.razick@collabora.co.uk>2012-01-06 16:32:47 -0500
committerSiraj Razick <siraj.razick@collabora.co.uk>2012-01-20 15:07:07 -0500
commit9ee76cdc02c550850c8490ddc97dc0c0fa24c38a (patch)
tree720684ea3b631d2c697765a4fcffe4c8adb7de25 /gabble
parent035a6b0a6e8ce1787abf2583bb918436282026fe (diff)
Change the plugin API to create_sidecar_async and create_sidecar_finish
All gabble plugins should implement these two methods hereafter. This patch also updates all the internal plugins to use this new API https://bugs.freedesktop.org/show_bug.cgi?id=44331
Diffstat (limited to 'gabble')
-rw-r--r--gabble/plugin.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/gabble/plugin.h b/gabble/plugin.h
index 6da99f136..ffb888c29 100644
--- a/gabble/plugin.h
+++ b/gabble/plugin.h
@@ -60,6 +60,11 @@ typedef GPtrArray * (*GabblePluginCreateChannelManagersImpl) (
GabblePlugin *plugin,
TpBaseConnection *connection);
+typedef GabbleSidecar * (*GabblePluginCreateSidecarFinishImpl) (
+ GabblePlugin *plugin,
+ GAsyncResult *result,
+ GError **error);
+
struct _GabblePluginPrivacyListMap {
const gchar *presence_status_name;
const gchar *privacy_list_name;
@@ -81,9 +86,14 @@ struct _GabblePluginInterface {
const gchar * const *sidecar_interfaces;
/**
- * An implementation of gabble_plugin_create_sidecar().
+ * An implementation of gabble_plugin_create_sidecar_async().
+ */
+ GabblePluginCreateSidecarImpl create_sidecar_async;
+
+ /**
+ * An implementation of gabble_plugin_create_sidecar_finish().
*/
- GabblePluginCreateSidecarImpl create_sidecar;
+ GabblePluginCreateSidecarFinishImpl create_sidecar_finish;
/**
* The plugin's version, conventionally a "."-separated sequence of
@@ -120,7 +130,7 @@ gboolean gabble_plugin_implements_sidecar (
GabblePlugin *plugin,
const gchar *sidecar_interface);
-void gabble_plugin_create_sidecar (
+void gabble_plugin_create_sidecar_async (
GabblePlugin *plugin,
const gchar *sidecar_interface,
GabbleConnection *connection,