Error code for encodeKeyword API
This commit updates encodeKeyword APIs 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: I0cba6191d2ec6ded8e793514086f3e62218cf893
Signed-off-by: Rekha Aparna <vrekhaaparna@ibm.com>
diff --git a/vpd-manager/src/worker.cpp b/vpd-manager/src/worker.cpp
index 9c020c5..b04c431 100644
--- a/vpd-manager/src/worker.cpp
+++ b/vpd-manager/src/worker.cpp
@@ -611,6 +611,8 @@
const std::string& encoding =
propValuePair.value().value("encoding", "");
+ uint16_t l_errCode = 0;
+
if (auto ipzVpdMap =
std::get_if<types::IPZVpdMap>(&parsedVpdMap))
{
@@ -619,7 +621,18 @@
(*ipzVpdMap).at(record).count(keyword))
{
auto encoded = vpdSpecificUtility::encodeKeyword(
- ((*ipzVpdMap).at(record).at(keyword)), encoding);
+ ((*ipzVpdMap).at(record).at(keyword)), encoding,
+ l_errCode);
+
+ if (l_errCode)
+ {
+ logging::logMessage(
+ std::string(
+ "Failed to get encoded keyword value for : ") +
+ keyword + std::string(", error : ") +
+ commonUtility::getErrCodeMsg(l_errCode));
+ }
+
propertyMap.emplace(property, encoded);
}
}
@@ -635,7 +648,16 @@
vpdSpecificUtility::encodeKeyword(
std::string((*kwValue).begin(),
(*kwValue).end()),
- encoding);
+ encoding, l_errCode);
+
+ if (l_errCode)
+ {
+ logging::logMessage(
+ std::string(
+ "Failed to get encoded keyword value for : ") +
+ keyword + std::string(", error : ") +
+ commonUtility::getErrCodeMsg(l_errCode));
+ }
propertyMap.emplace(property, encodedValue);
}
@@ -646,7 +668,15 @@
vpdSpecificUtility::encodeKeyword(
std::string((*kwValue).begin(),
(*kwValue).end()),
- encoding);
+ encoding, l_errCode);
+
+ if (l_errCode)
+ {
+ logging::logMessage(
+ "Failed to get encoded keyword value for : " +
+ keyword + ", error : " +
+ commonUtility::getErrCodeMsg(l_errCode));
+ }
propertyMap.emplace(property, encodedValue);
}