Refactor PropertiesChanged handler setup
Most sensor daemons had pretty much the same duplicated open-coded
pattern for setting up PropertiesChanged signal matches; introduce a
helper function to reduce the duplication and make things more readable.
Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
Change-Id: I803a21eea2f6d7fc71b50d54bb8fd57a104f3349
diff --git a/src/IpmbSensor.cpp b/src/IpmbSensor.cpp
index 88f6bb3..280ef24 100644
--- a/src/IpmbSensor.cpp
+++ b/src/IpmbSensor.cpp
@@ -642,12 +642,10 @@
});
};
- sdbusplus::bus::match_t configMatch(
- static_cast<sdbusplus::bus_t&>(*systemBus),
- "type='signal',member='PropertiesChanged',path_namespace='" +
- std::string(inventoryPath) + "',arg0namespace='" + configInterface +
- "'",
- eventHandler);
+ std::vector<std::unique_ptr<sdbusplus::bus::match_t>> matches =
+ setupPropertiesChangedMatches(
+ *systemBus, std::to_array<const char*>({configInterface}),
+ eventHandler);
sdbusplus::bus::match_t powerChangeMatch(
static_cast<sdbusplus::bus_t&>(*systemBus),