summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--redfish-core/lib/memory.hpp37
1 files changed, 36 insertions, 1 deletions
diff --git a/redfish-core/lib/memory.hpp b/redfish-core/lib/memory.hpp
index c85b0001bc..f6be846d9b 100644
--- a/redfish-core/lib/memory.hpp
+++ b/redfish-core/lib/memory.hpp
@@ -672,6 +672,41 @@ inline void getDimmDataByService(std::shared_ptr<AsyncResp> aResp,
aResp->res.jsonValue["MemoryLocation"][property.first] =
*value;
}
+ else if (property.first == "SparePartNumber")
+ {
+ const std::string* value =
+ std::get_if<std::string>(&property.second);
+ if (value == nullptr)
+ {
+ messages::internalError(aResp->res);
+ continue;
+ }
+ aResp->res.jsonValue["SparePartNumber"] = *value;
+ }
+ else if (property.first == "Model")
+ {
+ const std::string* value =
+ std::get_if<std::string>(&property.second);
+ if (value == nullptr)
+ {
+ messages::internalError(aResp->res);
+ continue;
+ }
+ aResp->res.jsonValue["Model"] = *value;
+ }
+ else if (property.first == "LocationCode")
+ {
+ const std::string* value =
+ std::get_if<std::string>(&property.second);
+ if (value == nullptr)
+ {
+ messages::internalError(aResp->res);
+ continue;
+ }
+ aResp->res
+ .jsonValue["Location"]["PartLocation"]["ServiceLabel"] =
+ *value;
+ }
else
{
getPersistentMemoryProperties(aResp, properties);
@@ -900,7 +935,7 @@ class Memory : public Node
}
const std::string& dimmId = params[0];
- res.jsonValue["@odata.type"] = "#Memory.v1_7_0.Memory";
+ res.jsonValue["@odata.type"] = "#Memory.v1_11_0.Memory";
res.jsonValue["@odata.id"] =
"/redfish/v1/Systems/system/Memory/" + dimmId;
auto asyncResp = std::make_shared<AsyncResp>(res);