registries: make registration dynamic
Rather than having to manually hook code for registries, add a small
registration function to the registry header and use this registration
results throughout the registry interactions.
Tested:
Confirmed registries have same behavior.
```
$ curl -s -k https://localhost:18080/redfish/v1/Registries/ | jq '.Members | map(."@odata.id")'
[
"/redfish/v1/Registries/Base",
"/redfish/v1/Registries/HeartbeatEvent",
"/redfish/v1/Registries/OpenBMC",
"/redfish/v1/Registries/ResourceEvent",
"/redfish/v1/Registries/TaskEvent",
"/redfish/v1/Registries/Telemetry"
]
```
```
$ curl -s -k https://localhost:18080/redfish/v1/Registries/TaskEvent/TaskEvent | jq ".Messages | keys"
[
"TaskAborted",
"TaskCancelled",
"TaskCompletedOK",
"TaskCompletedWarning",
"TaskPaused",
"TaskProgressChanged",
"TaskRemoved",
"TaskResumed",
"TaskStarted"
]
```
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iaa355420736a2587d9da4e995208d579443ca9b8
diff --git a/redfish-core/src/heartbeat_messages.cpp b/redfish-core/src/heartbeat_messages.cpp
index 3cef110..2f9575e 100644
--- a/redfish-core/src/heartbeat_messages.cpp
+++ b/redfish-core/src/heartbeat_messages.cpp
@@ -31,16 +31,16 @@
namespace messages
{
-static nlohmann::json getLog(redfish::registries::heartbeat_event::Index name,
+static nlohmann::json getLog(redfish::registries::HeartbeatEvent::Index name,
std::span<const std::string_view> args)
{
size_t index = static_cast<size_t>(name);
- if (index >= redfish::registries::heartbeat_event::registry.size())
+ if (index >= redfish::registries::HeartbeatEvent::registry.size())
{
return {};
}
- return getLogFromRegistry(redfish::registries::heartbeat_event::header,
- redfish::registries::heartbeat_event::registry,
+ return getLogFromRegistry(redfish::registries::HeartbeatEvent::header,
+ redfish::registries::HeartbeatEvent::registry,
index, args);
}
@@ -54,7 +54,7 @@
nlohmann::json redfishServiceFunctional()
{
return getLog(
- redfish::registries::heartbeat_event::Index::redfishServiceFunctional,
+ redfish::registries::HeartbeatEvent::Index::redfishServiceFunctional,
{});
}