Modified to get wifi state 53/58153/1 submit/tizen/20160211.015108
authorhyunuktak <hyunuk.tak@samsung.com>
Thu, 28 Jan 2016 02:50:21 +0000 (11:50 +0900)
committerhyunuktak <hyunuk.tak@samsung.com>
Thu, 28 Jan 2016 02:50:24 +0000 (11:50 +0900)
Change-Id: I33ce465db09015d4b897b37c2254924f9f04c1cd
Signed-off-by: hyunuktak <hyunuk.tak@samsung.com>
interfaces/netconfig-iface-wifi.xml
packaging/net-config.spec
src/wifi-state.c

index ac59f08cff708f8fec445ef7167925f66d0237b1..e9c6aa6d7bdd60f7b0b45b40317005a13a2147f4 100755 (executable)
@@ -13,7 +13,7 @@
                <method name="RemoveP2pDriver">
                </method>
                <method name="GetWifiState">
-                       <arg type="i" name="state" direction="out"/>
+                       <arg type="s" name="state" direction="out"/>
                </method>
                <method name="SetBgscan">
                        <arg type="u" name="ScanMode" direction="in"/>
index eb59aa95bd567fb6926a388d1d7fa4caa8ba5190..0ebe9139a1081bd6422cf4c1a0004dbc2a6cd096 100755 (executable)
@@ -1,6 +1,6 @@
 Name:          net-config
 Summary:       TIZEN Network Configuration service
-Version:       1.1.51
+Version:       1.1.52
 Release:       2
 Group:         System/Network
 License:       Apache-2.0
index ebf82d5f06e5be55c057dd731c70e365413325d1..408694e777138f4652772e6e42277280d3c323dd 100755 (executable)
@@ -700,35 +700,48 @@ void wifi_state_get_connected_essid(gchar **essid)
  *     WIFI_CONNECTION_STATE_CONFIGURATION     = 2
  *     WIFI_CONNECTION_STATE_CONNECTED         = 3
  */
+/*     connection_wifi_state_e in CAPI
+ *
+ *     CONNECTION_WIFI_STATE_DEACTIVATED       = 0
+ *     CONNECTION_WIFI_STATE_DISCONNECTED      = 1
+ *     CONNECTION_WIFI_STATE_CONNECTED         = 2
+ */
 gboolean handle_get_wifi_state(Wifi *wifi, GDBusMethodInvocation *context)
 {
        g_return_val_if_fail(wifi != NULL, FALSE);
-       wifi_service_state_e state = NETCONFIG_WIFI_UNKNOWN;
-       gint wifi_state = 0;
-       state = wifi_state_get_service_state();
+       GVariant *param = NULL;
+       wifi_tech_state_e tech_state = NETCONFIG_WIFI_TECH_UNKNOWN;
+       wifi_service_state_e service_state = NETCONFIG_WIFI_UNKNOWN;
+       tech_state = wifi_state_get_technology_state();
+       service_state = wifi_state_get_service_state();
 
-       switch (state) {
-       case NETCONFIG_WIFI_FAILURE:
-               wifi_state = -1;
-               break;
-       case NETCONFIG_WIFI_UNKNOWN:
-       case NETCONFIG_WIFI_IDLE:
-               wifi_state = 0;
-               break;
-       case NETCONFIG_WIFI_ASSOCIATION:
-               wifi_state = 1;
-               break;
-       case NETCONFIG_WIFI_CONFIGURATION:
-               wifi_state = 2;
-               break;
-       case NETCONFIG_WIFI_CONNECTED:
-               wifi_state = 3;
-               break;
-       default:
-               wifi_state = 0;
+       if(tech_state == NETCONFIG_WIFI_TECH_UNKNOWN) {
+               param = g_variant_new("(s)", "unknown");
+       } else if(tech_state == NETCONFIG_WIFI_TECH_OFF ||
+               tech_state == NETCONFIG_WIFI_TECH_WPS_ONLY) {
+               param = g_variant_new("(s)", "deactivated");
+       } else {
+               switch (service_state) {
+               case NETCONFIG_WIFI_FAILURE:
+                       param = g_variant_new("(s)", "failure");
+                       break;
+               case NETCONFIG_WIFI_ASSOCIATION:
+                       param = g_variant_new("(s)", "association");
+                       break;
+               case NETCONFIG_WIFI_CONFIGURATION:
+                       param = g_variant_new("(s)", "configuration");
+                       break;
+               case NETCONFIG_WIFI_CONNECTED:
+                       param = g_variant_new("(s)", "connected");
+                       break;
+               case NETCONFIG_WIFI_UNKNOWN:
+               case NETCONFIG_WIFI_IDLE:
+               default:
+                       param = g_variant_new("(s)", "disconnected");
+               }
        }
 
-       g_dbus_method_invocation_return_value(context, g_variant_new("(i)", wifi_state));
+       g_dbus_method_invocation_return_value(context, param);
 
        return TRUE;
 }