sdbus++: events: handle redfish-mapping events
Handle loading events with redfish-mapping without crashing.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I4140e948d938c775e52d41ec65793a70364ab831
diff --git a/tools/sdbusplus/event.py b/tools/sdbusplus/event.py
index 36d4673..84fda77 100644
--- a/tools/sdbusplus/event.py
+++ b/tools/sdbusplus/event.py
@@ -27,13 +27,20 @@
self.is_error = kwargs.pop("is_error", False)
self.deprecated = kwargs.pop("deprecated", None)
self.errno = kwargs.pop("errno", "EIO")
- self.languages = {
- key: EventLanguage(**kwargs.pop(key, {})) for key in ["en"]
- }
+ self.redfish_map = kwargs.pop("redfish-mapping", None)
+ if not self.redfish_map:
+ self.languages = {
+ key: EventLanguage(**kwargs.pop(key, {})) for key in ["en"]
+ }
+ else:
+ self.languages = {
+ "en": EventLanguage(
+ **{"message": f"Redfish({self.redfish_map})"}
+ )
+ }
self.metadata = [
EventMetadata(**n) for n in kwargs.pop("metadata", [])
]
- self.redfish_map = kwargs.pop("redfish-mapping", None)
self.severity = EventElement.syslog_severity(
kwargs.pop("severity", "informational")
)