static int total_file_count_in_group = 0;
static int sync_success_cnt = 0;
+static void set_first_sync_complete()
+{
+ int complete_flags = 0;
+ if (vconf_get_int(VCONFKEY_STICKER_SYNC_COMPLETE, &complete_flags) == 0 && complete_flags == 0) {
+ if (vconf_set_int(VCONFKEY_STICKER_SYNC_COMPLETE, VCONFKEY_STICKER_SYNC_COMPLETE_DONE) == 0)
+ LOGD("Succeed to set sync complete");
+ else
+ LOGW("Fail to set sync complete");
+ }
+}
+
+static void set_sync_progressing(gboolean flag)
+{
+#ifdef VCONFKEY_STICKER_SYNC_STATE
+ LOGD("sync progressing : %d", flag);
+ if (vconf_set_int(VCONFKEY_STICKER_SYNC_STATE, flag ? VCONFKEY_STICKER_SYNC_STATE_IN_PROGRESS : VCONFKEY_STICKER_SYNC_STATE_WAITING) == 0)
+ LOGD("Succeed to set sync state");
+ else
+ LOGW("Fail to set sync state");
+#else
+ LOGW("No vconf sync state definition");
+#endif
+}
+
static gboolean _send_json_data(JsonObject *obj)
{
JsonGenerator *j_generator = NULL;
current_request.mode = string(mode ? mode : "manual");
current_request.category = string(category ? category : "arsticker");
current_request.type = string(type ? type : "input");
+ set_sync_progressing(TRUE);
result = true;
}
LOGD("Succeed to set supported feature");
else
LOGW("Fail to set supported feature");
+#else
+ LOGW("No vconf supported feature");
#endif
if (!process_request_queue()) {
send_message("sync_start_response", response_to_app.c_str());
if (result_code != SYNC_START_RSP_SUCCESS) {
+ set_sync_progressing(FALSE);
if (!process_request_queue()) {
service_app_exit();
}
json_object_set_string_member(j_object, "result", "failure");
}
else {
- int complete_flags = 0;
-
int feature_flag = 0;
- if (vconf_get_int(VCONFKEY_STICKER_SYNC_COMPLETE, &complete_flags) == 0 && complete_flags == 0) {
+
#ifdef VCONFKEY_STICKER_SUPPORTED_FEATURE
- if (vconf_get_int(VCONFKEY_STICKER_SUPPORTED_FEATURE, &feature_flag) == 0) {
- if (feature_flag == VCONFKEY_STICKER_FEATURE_AREMOJI) {
- if (current_request.category == string("arsticker")) {
- complete_flags = VCONFKEY_STICKER_SYNC_COMPLETE_DONE;
- }
+ if (vconf_get_int(VCONFKEY_STICKER_SUPPORTED_FEATURE, &feature_flag) == 0)
+ {
+ LOGD("feature : %d, current request category : %s", feature_flag, current_request.category.c_str());
+ if (feature_flag == VCONFKEY_STICKER_FEATURE_AREMOJI)
+ {
+ if (current_request.category == string("arsticker"))
+ {
+ set_first_sync_complete();
+ set_sync_progressing(FALSE);
}
- else if (feature_flag & VCONFKEY_STICKER_FEATURE_BITMOJI) {
- if (current_request.category == string("bitmoji")) {
- complete_flags = VCONFKEY_STICKER_SYNC_COMPLETE_DONE;
- }
+ }
+ else if (feature_flag & VCONFKEY_STICKER_FEATURE_BITMOJI)
+ {
+ if (current_request.category == string("bitmoji"))
+ {
+ set_first_sync_complete();
+ set_sync_progressing(FALSE);
}
-
- LOGD("sync complete flag : %x", complete_flags);
-
- if (vconf_set_int(VCONFKEY_STICKER_SYNC_COMPLETE, complete_flags) == 0)
- LOGD("Succeed to set sync complete");
- else
- LOGW("Fail to set sync complete");
}
+ }
+ else {
+ LOGW("Failed to read support feature");
+ }
#else
- LOGW("No vconf supported feature");
+ LOGW("No vconf supported feature");
#endif /* VCONFKEY_STICKER_SUPPORTED_FEATURE */
- }
json_object_set_string_member(j_object, "result", "success");
sync_success_cnt++;