Error code for getExpandedLocationCode API
This commit updates getExpnadedLocationCode API to set error code in
case of error. This helps the caller of API to take action based on the
error code returned from the API.
Change-Id: I1570e13ca782f9320f1fc7e43680807d232e6310
Signed-off-by: Rekha Aparna <vrekhaaparna@ibm.com>
diff --git a/wait-vpd-parser/src/prime_inventory.cpp b/wait-vpd-parser/src/prime_inventory.cpp
index 409087a..8e3a53e 100644
--- a/wait-vpd-parser/src/prime_inventory.cpp
+++ b/wait-vpd-parser/src/prime_inventory.cpp
@@ -289,7 +289,19 @@
std::string l_value =
vpd::vpdSpecificUtility::getExpandedLocationCode(
l_propValuePair.value().get<std::string>(),
- i_parsedVpdMap);
+ i_parsedVpdMap, l_errCode);
+
+ if (l_errCode)
+ {
+ m_logger->logMessage(
+ "Failed to get expanded location code for location code - " +
+ l_propValuePair.value().get<std::string>() +
+ " ,error : " +
+ vpd::commonUtility::getErrCodeMsg(l_errCode));
+
+ l_errCode = 0;
+ }
+
l_propertyMap.emplace(l_property, l_value);
auto l_locCodeProperty = l_propertyMap;
@@ -303,6 +315,8 @@
m_logger->logMessage(
"Failed to insert value into map, error : " +
vpd::commonUtility::getErrCodeMsg(l_errCode));
+
+ l_errCode = 0;
}
}
else
@@ -340,8 +354,6 @@
const std::string& l_encoding =
l_propValuePair.value().value("encoding", "");
- uint16_t l_errCode = 0;
-
if (auto l_ipzVpdMap =
std::get_if<vpd::types::IPZVpdMap>(&i_parsedVpdMap))
{
@@ -359,6 +371,8 @@
"Failed to get encoded keyword value for : " +
l_keyword + ", error : " +
vpd::commonUtility::getErrCodeMsg(l_errCode));
+
+ l_errCode = 0;
}
l_propertyMap.emplace(l_property, l_encoded);
@@ -387,6 +401,8 @@
l_keyword + ", error : " +
vpd::commonUtility::getErrCodeMsg(
l_errCode));
+
+ l_errCode = 0;
}
l_propertyMap.emplace(l_property, l_encodedValue);
@@ -407,6 +423,8 @@
l_keyword + ", error : " +
vpd::commonUtility::getErrCodeMsg(
l_errCode));
+
+ l_errCode = 0;
}
l_propertyMap.emplace(l_property, l_encodedValue);
@@ -426,7 +444,6 @@
}
}
}
- l_errCode = 0;
vpd::vpdSpecificUtility::insertOrMerge(io_interfaceMap, l_interface,
move(l_propertyMap), l_errCode);
@@ -434,6 +451,8 @@
{
m_logger->logMessage("Failed to insert value into map, error : " +
vpd::commonUtility::getErrCodeMsg(l_errCode));
+
+ l_errCode = 0;
}
}
}