diff options
author | JackLivio <jack@livio.io> | 2018-08-08 10:02:33 -0400 |
---|---|---|
committer | JackLivio <jack@livio.io> | 2018-08-08 10:02:33 -0400 |
commit | 26bc93ce70dfad33d8e367e4fddcea1c0c0d34fd (patch) | |
tree | 1c4c801cbabd05c3419b1ae203048465c8ed595e | |
parent | 3825893a1567b04eaae0cf3fc349eb70210eb274 (diff) | |
parent | 5f651c9e75441633c4e489d81b09900d1457bfb1 (diff) | |
download | sdl_core-26bc93ce70dfad33d8e367e4fddcea1c0c0d34fd.tar.gz |
Merge branch 'feature/mobile_versioning' into feature/choice_vr_optional
-rw-r--r-- | src/components/smart_objects/src/object_schema_item.cc | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/components/smart_objects/src/object_schema_item.cc b/src/components/smart_objects/src/object_schema_item.cc index def0c0aceb..d046e49bcd 100644 --- a/src/components/smart_objects/src/object_schema_item.cc +++ b/src/components/smart_objects/src/object_schema_item.cc @@ -76,11 +76,11 @@ CObjectSchemaItem::SMember::SMember( bool CObjectSchemaItem::SMember::CheckHistoryFieldVersion( const utils::SemanticVersion& MessageVersion) const { if (MessageVersion.isValid()) { - if (mSince.is_initialized()) { + if (mSince != boost::none) { if (MessageVersion < mSince.get()) { return false; // Msg version predates `since` field } else { - if (mUntil.is_initialized() && (MessageVersion >= mUntil.get())) { + if (mUntil != boost::none && (MessageVersion >= mUntil.get())) { return false; // Msg version newer than `until` field } else { return true; // Mobile msg version falls within specified version @@ -89,7 +89,7 @@ bool CObjectSchemaItem::SMember::CheckHistoryFieldVersion( } } - if (mUntil.is_initialized() && (MessageVersion >= mUntil.get())) { + if (mUntil != boost::none && (MessageVersion >= mUntil.get())) { return false; // Msg version newer than `until` field } else { return true; // Mobile msg version falls within specified version range @@ -168,14 +168,14 @@ Errors::eType CObjectSchemaItem::validate( const SMember& member = it->second; std::set<std::string>::const_iterator key_it = object_keys.find(key); if (object_keys.end() == key_it) { - if (member.mSince.is_initialized() && + if (member.mSince != boost::none && MessageVersion < member.mSince.get() && member.mHistoryVector.size() > 0) { // Message version predates parameter and a history vector exists. for (uint i = 0; i < member.mHistoryVector.size(); i++) { - if (member.mHistoryVector[i].mSince.is_initialized() && + if (member.mHistoryVector[i].mSince != boost::none && MessageVersion >= member.mHistoryVector[i].mSince.get()) { - if (member.mHistoryVector[i].mUntil.is_initialized() && + if (member.mHistoryVector[i].mUntil != boost::none && MessageVersion >= member.mHistoryVector[i].mUntil.get()) { // MessageVersion is newer than the specified "Until" version continue; @@ -189,9 +189,8 @@ Errors::eType CObjectSchemaItem::validate( } break; } - } else if (member.mHistoryVector[i].mSince.is_initialized() == - false && - member.mHistoryVector[i].mUntil.is_initialized() && + } else if (member.mHistoryVector[i].mSince == boost::none && + member.mHistoryVector[i].mUntil != boost::none && MessageVersion < member.mHistoryVector[i].mUntil.get()) { if (member.mHistoryVector[i].mIsMandatory == true && (member.mHistoryVector[i].mIsRemoved == false)) { @@ -329,11 +328,12 @@ void CObjectSchemaItem::RemoveFakeParams( key.compare(app_id) != 0) { ++it; Object.erase(key); - } else if (members_it->second.mIsRemoved && + } else if (mMembers.end() != members_it && members_it->second.mIsRemoved && members_it->second.CheckHistoryFieldVersion(MessageVersion)) { ++it; Object.erase(key); - } else if (members_it->second.mHistoryVector.size() > 0) { + } else if (mMembers.end() != members_it && + members_it->second.mHistoryVector.size() > 0) { for (uint i = 0; i < members_it->second.mHistoryVector.size(); i++) { if (members_it->second.mHistoryVector[i].CheckHistoryFieldVersion( MessageVersion) && |