common: GSignondSignonuiData now uses GSignondDictionary getters/setters
authorAlexander Kanavin <alexander.kanavin@intel.com>
Mon, 25 Mar 2013 20:06:32 +0000 (22:06 +0200)
committerAlexander Kanavin <alexander.kanavin@intel.com>
Mon, 25 Mar 2013 20:06:32 +0000 (22:06 +0200)
include/gsignond/gsignond-signonui-data.h
src/common/gsignond-signonui-data.c
src/daemon/gsignond-identity.c
src/plugins/password/gsignond-password-plugin.c
src/plugins/ssotest/gsignond-ssotest-plugin.c

index 1c4f1e6..e6fc74d 100644 (file)
@@ -67,7 +67,8 @@ void
 gsignond_signonui_data_set_caption (GSignondSignonuiData *data,
                    const gchar *caption);
 gboolean
-gsignond_signonui_data_get_confirm (GSignondSignonuiData *data);
+gsignond_signonui_data_get_confirm (GSignondSignonuiData *data, 
+                                    gboolean *confirm);
 void
 gsignond_signonui_data_set_confirm (GSignondSignonuiData *data,
                    gboolean confirm);
@@ -77,7 +78,8 @@ void
 gsignond_signonui_data_set_final_url (GSignondSignonuiData *data,
                      const gchar *url);
 gboolean
-gsignond_signonui_data_get_forgot_password (GSignondSignonuiData *data);
+gsignond_signonui_data_get_forgot_password (GSignondSignonuiData *data,
+                                            gboolean *forgot_password);
 void
 gsignond_signonui_data_set_forgot_password (GSignondSignonuiData *data,
                                             gboolean forgot);
@@ -101,23 +103,27 @@ gsignond_signonui_data_get_password (GSignondSignonuiData *data);
 void
 gsignond_signonui_data_set_password (GSignondSignonuiData *data,
                     const gchar *password);
-GSignondSignonuiError
-gsignond_signonui_data_get_query_error (GSignondSignonuiData *data);
+gboolean
+gsignond_signonui_data_get_query_error (GSignondSignonuiData *data,
+                                        GSignondSignonuiError *error);
 void
 gsignond_signonui_data_set_query_error (GSignondSignonuiData *data,
                        GSignondSignonuiError error);
 gboolean
-gsignond_signonui_data_get_query_password (GSignondSignonuiData *data);
+gsignond_signonui_data_get_query_password (GSignondSignonuiData *data,
+                                           gboolean *query_password);
 void
 gsignond_signonui_data_set_query_password (GSignondSignonuiData *data,
                           gboolean query);
 gboolean
-gsignond_signonui_data_get_query_username (GSignondSignonuiData *data);
+gsignond_signonui_data_get_query_username (GSignondSignonuiData *data,
+                                           gboolean *query_username);
 void
 gsignond_signonui_data_set_query_username (GSignondSignonuiData *data,
                                            gboolean query);
 gboolean
-gsignond_signonui_data_get_remember_password (GSignondSignonuiData *data);
+gsignond_signonui_data_get_remember_password (GSignondSignonuiData *data,
+                                              gboolean *query_password);
 void
 gsignond_signonui_data_set_remember_password (GSignondSignonuiData *data,
                              gboolean remember);
index 0f39d2c..c489b9b 100644 (file)
 #define SIGNONUI_KEY_URL_RESPONSE "UrlResponse"
 #define SIGNONUI_KEY_USERNAME "UserName"
 
-#define _GET_STRING(data,key) \
-{ \
-    GVariant* variant = gsignond_dictionary_get(data, key);\
-    return variant ? g_variant_get_string(variant, NULL) : NULL; \
-}
-
-#define _SET_STRING(data,key,value) \
-    if(value) gsignond_dictionary_set(data, key, g_variant_new_string(value))
-
-#define _GET_BOOLEAN(data,key) \
-{\
-    GVariant* variant = gsignond_dictionary_get(data, key);\
-    return variant ? g_variant_get_boolean(variant) : FALSE;\
-}
-
-#define _SET_BOOLEAN(data,key,value) \
-    gsignond_dictionary_set(data, key, g_variant_new_boolean(value))
-
-#define _GET_INT32(data, key) \
-{\
-    GVariant* variant = gsignond_dictionary_get(data, key);\
-    return variant ? g_variant_get_int32(variant) : 0; \
-}
-
-#define _SET_INT32(data,key,value)\
-    gsignond_dictionary_set(data, key, g_variant_new_int32(value));
-
 const gchar*
 gsignond_signonui_data_get_captcha_response (GSignondSignonuiData *data) 
 {
-    _GET_STRING(data, SIGNONUI_KEY_CAPTCHA_RESPONSE);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_CAPTCHA_RESPONSE);
 }
 
 void
 gsignond_signonui_data_set_captcha_response (GSignondSignonuiData *data,
                                              const gchar *response)
 {
-    _SET_STRING(data, SIGNONUI_KEY_CAPTCHA_RESPONSE, response);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_CAPTCHA_RESPONSE, response);
 }
 
 const gchar*
 gsignond_signonui_data_get_captcha_url (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_CAPTCHA_URL);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_CAPTCHA_URL);
 }
 
 void
 gsignond_signonui_data_set_captcha_url (GSignondSignonuiData *data,
                                         const gchar *url)
 {
-    _SET_STRING(data, SIGNONUI_KEY_CAPTCHA_URL, url);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_CAPTCHA_URL, url);
 }
 
 const gchar*
 gsignond_signonui_data_get_caption (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_CAPTION);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_CAPTION);
 }
 
 void
 gsignond_signonui_data_set_caption (GSignondSignonuiData *data,
                                     const gchar *caption)
 {
-    _SET_STRING(data, SIGNONUI_KEY_CAPTION, caption);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_CAPTION, caption);
 }
 
 gboolean
-gsignond_signonui_data_get_confirm (GSignondSignonuiData *data)
+gsignond_signonui_data_get_confirm (GSignondSignonuiData *data,
+                                    gboolean *confirm)
 {
-    _GET_BOOLEAN(data, SIGNONUI_KEY_CONFIRM);
+    return gsignond_dictionary_get_boolean (data, SIGNONUI_KEY_CONFIRM, confirm);
 }
 
 void
 gsignond_signonui_data_set_confirm (GSignondSignonuiData *data,
                                     gboolean confirm)
 {
-    _SET_BOOLEAN(data, SIGNONUI_KEY_CONFIRM, confirm);
+    gsignond_dictionary_set_boolean (data, SIGNONUI_KEY_CONFIRM, confirm);
 }
 
 const gchar*
 gsignond_signonui_data_get_final_url (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_FINAL_URL);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_FINAL_URL);
 }
 
 void
 gsignond_signonui_data_set_final_url (GSignondSignonuiData *data,
                                       const gchar *url)
 {
-    _SET_STRING(data, SIGNONUI_KEY_FINAL_URL, url);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_FINAL_URL, url);
 }
 
 gboolean
-gsignond_signonui_data_get_forgot_password (GSignondSignonuiData *data)
+gsignond_signonui_data_get_forgot_password (GSignondSignonuiData *data,
+                                            gboolean *forgot_password)
 {
-    _GET_BOOLEAN(data, SIGNONUI_KEY_FORGOT_PASSWORD);
+    return gsignond_dictionary_get_boolean (data, 
+                                            SIGNONUI_KEY_FORGOT_PASSWORD,
+                                            forgot_password);
 }
 
 void
 gsignond_signonui_data_set_forgot_password (GSignondSignonuiData *data,
                                             gboolean forgot)
 {
-    _SET_BOOLEAN(data, SIGNONUI_KEY_FORGOT_PASSWORD, forgot);
+    gsignond_dictionary_set_boolean (data, SIGNONUI_KEY_FORGOT_PASSWORD, forgot);
 }
 
 const gchar*
 gsignond_signonui_data_get_forgot_password_url (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_FORGOT_PASSWORD_URL);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_FORGOT_PASSWORD_URL);
 }
 
 void
 gsignond_signonui_data_set_forgot_password_url (GSignondSignonuiData *data,
                                                 const gchar *url)
 {
-    _SET_STRING(data, SIGNONUI_KEY_FORGOT_PASSWORD_URL, url);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_FORGOT_PASSWORD_URL, url);
 }
 
 const gchar*
 gsignond_signonui_data_get_message (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_MESSAGE);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_MESSAGE);
 }
 
 void
 gsignond_signonui_data_set_message (GSignondSignonuiData *data,
                                     const gchar *message)
 {
-    _SET_STRING(data, SIGNONUI_KEY_MESSAGE, message);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_MESSAGE, message);
 }
 
 const gchar*
 gsignond_signonui_data_get_open_url (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_OPEN_URL);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_OPEN_URL);
 }
 
 void
 gsignond_signonui_data_set_open_url (GSignondSignonuiData *data,
                                      const gchar *url)
 {
-    _SET_STRING(data, SIGNONUI_KEY_OPEN_URL, url);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_OPEN_URL, url);
 }
 
 const gchar*
 gsignond_signonui_data_get_password (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_PASSWORD);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_PASSWORD);
 }
 
 void
 gsignond_signonui_data_set_password (GSignondSignonuiData *data,
                                      const gchar *password)
 {
-    _SET_STRING(data, SIGNONUI_KEY_PASSWORD, password);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_PASSWORD, password);
 }
 
-GSignondSignonuiError
-gsignond_signonui_data_get_query_error (GSignondSignonuiData *data)
+gboolean
+gsignond_signonui_data_get_query_error (GSignondSignonuiData *data,
+                                        GSignondSignonuiError *error)
 {
-    _GET_INT32(data, SIGNONUI_KEY_QUERY_ERROR_CODE);
+    return gsignond_dictionary_get_uint32 (data, 
+                                          SIGNONUI_KEY_QUERY_ERROR_CODE, 
+                                          error);
 }
 
 void
 gsignond_signonui_data_set_query_error (GSignondSignonuiData *data,
                                         GSignondSignonuiError error)
 {
-    _SET_INT32(data, SIGNONUI_KEY_QUERY_ERROR_CODE, error);
+    gsignond_dictionary_set_uint32 (data, SIGNONUI_KEY_QUERY_ERROR_CODE, error);
 }
 
 gboolean
-gsignond_signonui_data_get_query_password (GSignondSignonuiData *data)
+gsignond_signonui_data_get_query_password (GSignondSignonuiData *data,
+                                            gboolean *query_password)
 {
-    _GET_BOOLEAN(data, SIGNONUI_KEY_QUERY_PASSWORD);
+    return gsignond_dictionary_get_boolean (data, 
+                                            SIGNONUI_KEY_QUERY_PASSWORD,
+                                            query_password);
 }
 
 void
 gsignond_signonui_data_set_query_password (GSignondSignonuiData *data,
                                            gboolean query)
 {
-    _SET_BOOLEAN(data, SIGNONUI_KEY_QUERY_PASSWORD, query);
+    gsignond_dictionary_set_boolean (data, SIGNONUI_KEY_QUERY_PASSWORD, query);
 }
 
 gboolean
-gsignond_signonui_data_get_query_username (GSignondSignonuiData *data)
+gsignond_signonui_data_get_query_username (GSignondSignonuiData *data,
+                                            gboolean *query_username)
 {
-    _GET_BOOLEAN(data, SIGNONUI_KEY_QUERY_USERNAME);
+    return gsignond_dictionary_get_boolean (data, 
+                                            SIGNONUI_KEY_QUERY_USERNAME,
+                                            query_username);
 }
 
 void
 gsignond_signonui_data_set_query_username (GSignondSignonuiData *data,
                                            gboolean query)
 {
-    _SET_BOOLEAN(data, SIGNONUI_KEY_QUERY_USERNAME, query);
+    gsignond_dictionary_set_boolean (data, SIGNONUI_KEY_QUERY_USERNAME, query);
 }
 
 gboolean
-gsignond_signonui_data_get_remember_password (GSignondSignonuiData *data)
+gsignond_signonui_data_get_remember_password (GSignondSignonuiData *data,
+                                            gboolean *remember_password)
 {
-    _GET_BOOLEAN(data, SIGNONUI_KEY_REMEMBER_PASSWORD);
+    return gsignond_dictionary_get_boolean (data, 
+                                            SIGNONUI_KEY_REMEMBER_PASSWORD,
+                                            remember_password);
 }
 
 void
 gsignond_signonui_data_set_remember_password (GSignondSignonuiData *data,
                                               gboolean remember)
 {
-    _SET_BOOLEAN(data, SIGNONUI_KEY_REMEMBER_PASSWORD, remember);
+    gsignond_dictionary_set_boolean (data, SIGNONUI_KEY_REMEMBER_PASSWORD, remember);
 }
 
 const gchar*
 gsignond_signonui_data_get_request_id (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_REQUEST_ID);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_REQUEST_ID);
 }
 
 void
 gsignond_signonui_data_set_request_id (GSignondSignonuiData *data,
                                        const gchar *id)
 {
-    _SET_STRING(data, SIGNONUI_KEY_REQUEST_ID, id);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_REQUEST_ID, id);
 }
 
 const gchar*
 gsignond_signonui_data_get_test_reply (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_TEST_REPLY_VALUES);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_TEST_REPLY_VALUES);
 }
 
 void
 gsignond_signonui_data_set_test_reply (GSignondSignonuiData *data,
                                        const gchar *reply)
 {
-    _SET_STRING(data, SIGNONUI_KEY_TEST_REPLY_VALUES, reply);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_TEST_REPLY_VALUES, reply);
 }
 
 const gchar*
 gsignond_signonui_data_get_title (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_TITLE);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_TITLE);
 }
 
 void
 gsignond_signonui_data_set_title (GSignondSignonuiData *data,
                                   const gchar* title)
 {
-    _SET_STRING(data, SIGNONUI_KEY_TITLE, title);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_TITLE, title);
 }
 
 const gchar*
 gsignond_signonui_data_get_url_response (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_URL_RESPONSE);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_URL_RESPONSE);
 }
 
 void
 gsignond_signonui_data_set_url_response (GSignondSignonuiData *data,
                                          const gchar *response)
 {
-    _SET_STRING(data, SIGNONUI_KEY_URL_RESPONSE, response);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_URL_RESPONSE, response);
 }
 
 const gchar*
 gsignond_signonui_data_get_username (GSignondSignonuiData *data)
 {
-    _GET_STRING(data, SIGNONUI_KEY_USERNAME);
+    return gsignond_dictionary_get_string (data, SIGNONUI_KEY_USERNAME);
 }
 
 void
 gsignond_signonui_data_set_username (GSignondSignonuiData *data,
                                      const gchar *username)
 {
-    _SET_STRING(data, SIGNONUI_KEY_USERNAME, username);
+    gsignond_dictionary_set_string (data, SIGNONUI_KEY_USERNAME, username);
 }
 
index fea4c4d..fb1138f 100644 (file)
@@ -519,7 +519,9 @@ _on_query_dialog_done (GSignondSignonuiData *reply, GError *error, gpointer user
         err = gsignond_get_gerror_for_id (GSIGNOND_ERROR_IDENTITY_OPERATION_CANCELED, "Operation cancled");
     }
 
-    err_id = gsignond_signonui_data_get_query_error (reply);
+    gboolean res = gsignond_signonui_data_get_query_error (reply, &err_id);
+    g_assert (res == TRUE);
+    
     if (err_id != SIGNONUI_ERROR_NONE) {
         switch (err_id) {
             case SIGNONUI_ERROR_CANCELED:
@@ -614,7 +616,9 @@ _on_user_verfied (GSignondSignonuiData *reply, GError *error, gpointer user_data
         err = gsignond_get_gerror_for_id (GSIGNOND_ERROR_IDENTITY_OPERATION_CANCELED, "Operation cancled");
     }
 
-    err_id = gsignond_signonui_data_get_query_error (reply);
+    gboolean query_res = gsignond_signonui_data_get_query_error (reply, &err_id);
+    g_assert (query_res == TRUE);
+    
     if (err_id != SIGNONUI_ERROR_NONE) {
         switch (err_id) {
             case SIGNONUI_ERROR_CANCELED:
index f83d350..b9b865e 100644 (file)
@@ -85,8 +85,10 @@ static void gsignond_password_plugin_user_action_finished (
     GSignondPlugin *self, 
     GSignondSignonuiData *session_data)
 {
-    GSignondSignonuiError query_error = gsignond_signonui_data_get_query_error(
-        session_data);
+    GSignondSignonuiError query_error;
+    gboolean res = gsignond_signonui_data_get_query_error(session_data,
+                                                          &query_error);
+    g_assert(res == TRUE);
     const gchar* username = gsignond_signonui_data_get_username(session_data);
     const gchar* secret = gsignond_signonui_data_get_password(session_data);
     
index 7b100e6..5e9f639 100644 (file)
@@ -149,8 +149,11 @@ static void gsignond_ssotest_plugin_user_action_finished (
 {
     g_return_if_fail (GSIGNOND_IS_SSOTEST_PLUGIN (plugin));
 
-    GSignondSignonuiError query_error =
-        gsignond_signonui_data_get_query_error (session_data);
+    GSignondSignonuiError query_error;
+    gboolean res = gsignond_signonui_data_get_query_error(session_data,
+                                                          &query_error);
+    g_assert(res == TRUE);
+
     const gchar* username = gsignond_signonui_data_get_username (session_data);
     const gchar* secret = gsignond_signonui_data_get_password (session_data);