Support the new association defs interface
An xyz.openbmc_project version of the org.openbmc_project.Associations
interface was just created:
xyz.openbmc_project.Association.Definitions
property: Associations
Support this interface as well as the original org.openbmc one.
Change-Id: Idc5a0e5afab51ec96f18a2759446707146b077d1
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
diff --git a/src/processing.cpp b/src/processing.cpp
index 6dd6493..3c7e7fb 100644
--- a/src/processing.cpp
+++ b/src/processing.cpp
@@ -64,8 +64,9 @@
auto ifaces = pathIt->second.find(wellKnown);
if (ifaces != pathIt->second.end())
{
- auto assoc = std::find(ifaces->second.begin(), ifaces->second.end(),
- ASSOCIATIONS_INTERFACE);
+ auto assoc = std::find_if(
+ ifaces->second.begin(), ifaces->second.end(),
+ [](const auto& iface) { return isAssocDefIface(iface); });
if (assoc != ifaces->second.end())
{
removeAssociation(pathIt->first, wellKnown, server, assocOwners,
@@ -98,13 +99,13 @@
{
ifaceList[wellKnown].emplace(interfacePair.first);
- if (interfacePair.first == ASSOCIATIONS_INTERFACE)
+ if (isAssocDefIface(interfacePair.first))
{
const sdbusplus::message::variant<std::vector<Association>>*
variantAssociations = nullptr;
for (const auto& interface : interfacePair.second)
{
- if (interface.first == "associations")
+ if (interface.first == getAssocDefPropName(interfacePair.first))
{
variantAssociations = &(interface.second);
}