aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@lanedo.com>2011-12-27 16:34:09 +0100
committerAleksander Morgado <aleksander@lanedo.com>2012-03-15 14:14:38 +0100
commitdd4b073e089c833609aea5b0da0bc65b41f5a91b (patch)
tree6d808b463dc9d7c7daf53fd9dffb4b18b8556495
parentadcc33d0eace99c4f0990cb69d714a31dc2603eb (diff)
libmm-glib: handle simple Disconnect()
-rw-r--r--libmm-glib/mm-modem-simple.c42
-rw-r--r--libmm-glib/mm-modem-simple.h22
2 files changed, 53 insertions, 11 deletions
diff --git a/libmm-glib/mm-modem-simple.c b/libmm-glib/mm-modem-simple.c
index 61cc4304..d4e059d8 100644
--- a/libmm-glib/mm-modem-simple.c
+++ b/libmm-glib/mm-modem-simple.c
@@ -180,7 +180,7 @@ mm_modem_simple_connect_sync (MMModemSimple *self,
gchar *bearer_path = NULL;
GVariant *variant;
- g_return_val_if_fail (MM_GDBUS_IS_MODEM (self), NULL);
+ g_return_val_if_fail (MM_GDBUS_IS_MODEM_SIMPLE (self), NULL);
variant = mm_common_connect_properties_get_dictionary (
MM_COMMON_CONNECT_PROPERTIES (properties));
@@ -205,3 +205,43 @@ mm_modem_simple_connect_sync (MMModemSimple *self,
return bearer;
}
+
+void
+mm_modem_simple_disconnect (MMModemSimple *self,
+ const gchar *bearer_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_return_if_fail (MM_GDBUS_IS_MODEM_SIMPLE (self));
+
+ mm_gdbus_modem_simple_call_disconnect (self,
+ bearer_path ? bearer_path : "/",
+ cancellable,
+ callback,
+ user_data);
+}
+
+gboolean
+mm_modem_simple_disconnect_finish (MMModemSimple *self,
+ GAsyncResult *res,
+ GError **error)
+{
+ g_return_val_if_fail (MM_GDBUS_IS_MODEM_SIMPLE (self), FALSE);
+
+ return mm_gdbus_modem_simple_call_disconnect_finish (self, res, error);
+}
+
+gboolean
+mm_modem_simple_disconnect_sync (MMModemSimple *self,
+ const gchar *bearer_path,
+ GCancellable *cancellable,
+ GError **error)
+{
+ g_return_val_if_fail (MM_GDBUS_IS_MODEM_SIMPLE (self), FALSE);
+
+ return mm_gdbus_modem_simple_call_disconnect_sync (self,
+ bearer_path ? bearer_path : "/",
+ cancellable,
+ error);
+}
diff --git a/libmm-glib/mm-modem-simple.h b/libmm-glib/mm-modem-simple.h
index 4eba5f0b..bfc69d30 100644
--- a/libmm-glib/mm-modem-simple.h
+++ b/libmm-glib/mm-modem-simple.h
@@ -52,16 +52,18 @@ MMBearer *mm_modem_simple_connect_sync (MMModemSimple *self,
GCancellable *cancellable,
GError **error);
-/* void mm_modem_simple_disconnect (MMModemSimple *self, */
-/* GCancellable *cancellable, */
-/* GAsyncReadyCallback callback, */
-/* gpointer user_data); */
-/* GList *mm_modem_simple_disconnect_finish (MMModemSimple *self, */
-/* GAsyncResult *res, */
-/* GError **error); */
-/* GList *mm_modem_simple_disconnect_sync (MMModemSimple *self, */
-/* GCancellable *cancellable, */
-/* GError **error); */
+void mm_modem_simple_disconnect (MMModemSimple *self,
+ const gchar *bearer_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+gboolean mm_modem_simple_disconnect_finish (MMModemSimple *self,
+ GAsyncResult *res,
+ GError **error);
+gboolean mm_modem_simple_disconnect_sync (MMModemSimple *self,
+ const gchar *bearer_path,
+ GCancellable *cancellable,
+ GError **error);
G_END_DECLS