Memory VPD parser review comments
In this commit review comments have been addressed for Memory vpd parser.
Change-Id: Ib9a67083048479ba3406a1932df3868d3953102c
Signed-off-by: Alpana Kumari <alpankum@in.ibm.com>
diff --git a/ibm_vpd_app.cpp b/ibm_vpd_app.cpp
index b5ca5fd..7eddeba 100644
--- a/ibm_vpd_app.cpp
+++ b/ibm_vpd_app.cpp
@@ -994,6 +994,13 @@
try
{
+ // check if vpd file is empty
+ if (file.empty())
+ {
+ throw(VpdDataException(
+ "VPD file is empty. Can't process with blank file."));
+ }
+
Binary vpdVector = getVpdDataInVector(js, file);
ParserInterface* parser = ParserFactory::getParser(move(vpdVector));
@@ -1053,4 +1060,4 @@
}
return rc;
-}
+}
\ No newline at end of file
diff --git a/vpd-parser/keyword_vpd_parser.cpp b/vpd-parser/keyword_vpd_parser.cpp
index 3d204f4..1d100a8 100644
--- a/vpd-parser/keyword_vpd_parser.cpp
+++ b/vpd-parser/keyword_vpd_parser.cpp
@@ -21,10 +21,6 @@
variant<KeywordVpdMap, store> KeywordVpdParser::parse()
{
int kwVpdType;
- if (keywordVpdVector.empty())
- {
- throw std::runtime_error("Blank Vpd Data");
- }
validateLargeResourceIdentifierString();
diff --git a/vpd-parser/memory_vpd_parser.cpp b/vpd-parser/memory_vpd_parser.cpp
index 6a4c608..3793ae0 100644
--- a/vpd-parser/memory_vpd_parser.cpp
+++ b/vpd-parser/memory_vpd_parser.cpp
@@ -21,13 +21,13 @@
{
KeywordVpdMap map{};
- vector<uint8_t> partNumber(iterator, iterator + PART_NUM_LEN);
+ Binary partNumber(iterator, iterator + PART_NUM_LEN);
advance(iterator, PART_NUM_LEN);
- vector<uint8_t> serialNumber(iterator, iterator + SERIAL_NUM_LEN);
+ Binary serialNumber(iterator, iterator + SERIAL_NUM_LEN);
advance(iterator, SERIAL_NUM_LEN);
- vector<uint8_t> ccin(iterator, iterator + CCIN_LEN);
+ Binary ccin(iterator, iterator + CCIN_LEN);
map.emplace("PN", move(partNumber));
map.emplace("SN", move(serialNumber));
@@ -38,12 +38,6 @@
variant<kwdVpdMap, Store> memoryVpdParser::parse()
{
- // check if vpd file is empty
- if (memVpd.empty())
- {
- throw runtime_error("VPD file is empty.");
- }
-
// Read the data and return the map
auto iterator = memVpd.cbegin();
// point the iterator to DIMM data and skip "11S"
diff --git a/vpd-parser/memory_vpd_parser.hpp b/vpd-parser/memory_vpd_parser.hpp
index 3d47144..1b7c9e6 100644
--- a/vpd-parser/memory_vpd_parser.hpp
+++ b/vpd-parser/memory_vpd_parser.hpp
@@ -28,7 +28,7 @@
/**
* @brief Constructor
*
- * Move kwVpdVector to parser object's kwVpdVector
+ * Move memVpdVector to parser object's memVpdVector
*/
memoryVpdParser(Binary&& VpdVector) : memVpd(std::move(VpdVector))
{