summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoragaliuzov <agaliuzov@luxoft.com>2016-03-23 04:26:09 -0700
committeragaliuzov <agaliuzov@luxoft.com>2016-03-23 04:26:09 -0700
commite3b9665aa185911a34c98f69c2dfea2341a4a605 (patch)
treeea0eaa547ecc01aa4d6e5aa4896e57701ef99a45
parent98b34b9746e9c32b3453488d757632db2716f465 (diff)
downloadsdl_core-e3b9665aa185911a34c98f69c2dfea2341a4a605.tar.gz
Add check for snasphot when loading from preload
Closes-Bug: APPLINK-22423
-rw-r--r--src/components/policy/src/policy/src/cache_manager.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/components/policy/src/policy/src/cache_manager.cc b/src/components/policy/src/policy/src/cache_manager.cc
index 67348c1e90..c6df31f35a 100644
--- a/src/components/policy/src/policy/src/cache_manager.cc
+++ b/src/components/policy/src/policy/src/cache_manager.cc
@@ -1046,6 +1046,16 @@ bool CacheManager::Init(const std::string& file_name) {
case InitResult::SUCCESS: {
LOG4CXX_INFO(logger_, "Policy Table was inited successfully");
result = LoadFromFile(file_name);
+
+ utils::SharedPtr<policy_table::Table> snapshot = GenerateSnapshot();
+ result &= snapshot->is_valid();
+ LOG4CXX_DEBUG(logger_, "Check if snapshot is valid: "
+ << std::boolalpha << result);
+ if(!result) {
+ rpc::ValidationReport report("policy_table");
+ snapshot->ReportErrors(&report);
+ }
+
} break;
default: {
result = false;