e_dbus/bluez: add adapter_get_discovering function
authorbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 1 Mar 2010 21:26:25 +0000 (21:26 +0000)
committerbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 1 Mar 2010 21:26:25 +0000 (21:26 +0000)
By: "Gustavo F. Padovan" <padovan@profusion.mobi>

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/e_dbus@46743 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/bin/e_dbus_bluez_test.c
src/lib/bluez/E_Bluez.h
src/lib/bluez/e_bluez_adapter.c

index 4fbe4d9..ffffaf1 100644 (file)
@@ -451,6 +451,23 @@ _on_cmd_adapter_set_powered(char *cmd, char *args)
 }
 
 static int
+_on_cmd_adapter_get_discovering(char *cmd, char *args)
+{
+   char *next_args;
+   bool discovering;
+   E_Bluez_Element *element = _element_from_args(args, &next_args);
+
+   if (!element)
+          return 1;
+
+   if (e_bluez_adapter_discovering_get(element, &discovering))
+     printf(":::Adapter discovering = \"%hhu\"\n", discovering);
+   else
+     fputs("ERROR: can't get adapter's Discovering\n", stderr);
+   return 1;
+}
+
+static int
 _on_cmd_adapter_start_discovery(char *cmd, char *args)
 {
    char *next_args;
@@ -571,6 +588,7 @@ _on_input(void *data, Ecore_Fd_Handler *fd_handler)
      {"adapter_get_address", _on_cmd_adapter_get_address},
      {"adapter_get_powered", _on_cmd_adapter_get_powered},
      {"adapter_set_powered", _on_cmd_adapter_set_powered},
+     {"adapter_get_discovering", _on_cmd_adapter_get_discovering},
      {"adapter_start_discovery", _on_cmd_adapter_start_discovery},
      {"adapter_stop_discovery", _on_cmd_adapter_stop_discovery},
      {"adapter_create_paired_device", _on_cmd_adapter_create_paired_device},
index 49a6bd8..d3acb5b 100644 (file)
@@ -99,6 +99,7 @@ extern "C" {
   EAPI bool e_bluez_adapter_powered_get(E_Bluez_Element *element, bool *powered) EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT;
 
   EAPI bool e_bluez_adapter_powered_set(E_Bluez_Element *profile, bool powered, E_DBus_Method_Return_Cb cb, const void *data) EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT;
+  EAPI bool e_bluez_adapter_discovering_get(E_Bluez_Element *element, bool *discovering) EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT;
   EAPI bool e_bluez_adapter_start_discovery(E_Bluez_Element *element, E_DBus_Method_Return_Cb cb, const void *data) EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT;
   EAPI bool e_bluez_adapter_stop_discovery(E_Bluez_Element *element, E_DBus_Method_Return_Cb cb, const void *data) EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT;
   EAPI bool e_bluez_adapter_create_paired_device(E_Bluez_Element *element, const char *object_path, const char *capability, const char *device, E_DBus_Method_Return_Cb cb, const void *data) EINA_ARG_NONNULL(1,2,4) EINA_WARN_UNUSED_RESULT;
index 307be25..f3b182e 100644 (file)
@@ -167,6 +167,29 @@ e_bluez_adapter_powered_set(E_Bluez_Element *element, bool powered, E_DBus_Metho
 }
 
 /**
+ * Get property "Discovering" value.
+ *
+ * If this property isn't found then 0 is returned.
+ * If zero is returned, then this call failed and parameter-returned
+ * values shall be considered invalid.
+ *
+ * @param discovering where to store the property value, must be a pointer
+ *        to booleans (bool *).
+ *
+ * @return 1 on success, 0 otherwise.
+ * @see e_bluez_manager_offline_mode_set()
+ */
+bool
+e_bluez_adapter_discovering_get(E_Bluez_Element *element, bool *discovering)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(element, 0);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(discovering, 0);
+
+   return e_bluez_element_property_get_stringshared
+     (element, e_bluez_prop_discovering, NULL, discovering);
+}
+
+/**
  * Start Discovery of Bluetooth Devices
  *
  * call StartDiscovery()