summaryrefslogtreecommitdiff
path: root/src/components/application_manager/src/resumption/resumption_data_json.cc
diff options
context:
space:
mode:
authorAndriy Byzhynar (GitHub) <AByzhynar@luxoft.com>2016-06-23 17:33:32 +0300
committerGitHub <noreply@github.com>2016-06-23 17:33:32 +0300
commit827bcaf0aa39348fa7ec4df796c4e124f7143169 (patch)
tree517a69ced2f09b702cb2368e7ae412efec2ea838 /src/components/application_manager/src/resumption/resumption_data_json.cc
parent833cac1b1de464f53d5709904a4ee24634be2936 (diff)
downloadsdl_core-827bcaf0aa39348fa7ec4df796c4e124f7143169.tar.gz
Revert "Cover resumption with unit tests"revert-618-feature/Cover_resumption_with_unit_tests
Diffstat (limited to 'src/components/application_manager/src/resumption/resumption_data_json.cc')
-rw-r--r--src/components/application_manager/src/resumption/resumption_data_json.cc29
1 files changed, 28 insertions, 1 deletions
diff --git a/src/components/application_manager/src/resumption/resumption_data_json.cc b/src/components/application_manager/src/resumption/resumption_data_json.cc
index 40262ff114..bb2faa412c 100644
--- a/src/components/application_manager/src/resumption/resumption_data_json.cc
+++ b/src/components/application_manager/src/resumption/resumption_data_json.cc
@@ -442,6 +442,31 @@ ssize_t ResumptionDataJson::GetObjectIndex(const std::string& policy_app_id,
return -1;
}
+bool ResumptionDataJson::IsResumptionDataValid(uint32_t index) const {
+ using namespace app_mngr;
+ using namespace utils::json;
+ SDL_AUTO_TRACE();
+ sync_primitives::AutoLock autolock(resumption_lock_);
+ const JsonValueRef json_app = GetSavedApplications()[index];
+ if (!json_app.HasMember(strings::app_id) ||
+ !json_app.HasMember(strings::ign_off_count) ||
+ !json_app.HasMember(strings::hmi_level) ||
+ !json_app.HasMember(strings::hmi_app_id) ||
+ !json_app.HasMember(strings::time_stamp) ||
+ !json_app.HasMember(strings::device_id)) {
+ SDL_ERROR("Wrong resumption data");
+ return false;
+ }
+
+ if (json_app.HasMember(strings::hmi_app_id) &&
+ 0 >= json_app[strings::hmi_app_id].AsUInt()) {
+ SDL_ERROR("Wrong resumption hmi app ID");
+ return false;
+ }
+
+ return true;
+}
+
void ResumptionDataJson::SetSavedApplication(
utils::json::JsonValueRef apps_json) {
SDL_AUTO_TRACE();
@@ -483,7 +508,9 @@ bool ResumptionDataJson::DropAppDataResumption(const std::string& device_id,
application[strings::application_global_properties].Clear();
application[strings::application_subscribtions].Clear();
application[strings::application_files].Clear();
- application.RemoveMember(strings::grammar_id);
+ // Seems there is no interface for json wrapper - needs to be created
+ // application.removeMember(strings::grammar_id);
+ application[strings::grammar_id].Clear();
SDL_DEBUG("Resumption data for application " << app_id << " with device_id "
<< device_id
<< " has been dropped.");