History log of /openbmc/phosphor-power/compatible_system_types_finder.cpp (Results 1 – 2 of 2)
Revision Date Author Comments
# 1838dbf9 05-Jun-2024 Shawn McCarney <shawnmm@us.ibm.com>

Move D-Bus finder class constructors

Three classes in this repository search for D-Bus interfaces and call
a callback when interfaces are found:
- DBusInterfacesFinder
- CompatibleSystemTypesFinder

Move D-Bus finder class constructors

Three classes in this repository search for D-Bus interfaces and call
a callback when interfaces are found:
- DBusInterfacesFinder
- CompatibleSystemTypesFinder
- DeviceFinder

The constructors of these three classes may immediately call the
callback. For this reason, these constructors should not be used in the
initialization list of constructors in other classes. Otherwise the
callback may be called before the other class is fully initialized,
leading to unpredictable behavior.

Move usage of these three constructors from initialization lists to
constructor bodies.

Tested:
+ CompatibleSystemTypesFinder
+ Test where compatible system types interface already exists on D-Bus
+ Verify callback is called immediately
+ Test where compatible system types interface does not already exist
on D-Bus
+ Verify callback is called later when interface is added
+ Verify callback is passed the correct data
+ DeviceFinder
+ Test where device interface already exists on D-Bus
+ Verify callback is called immediately
+ Test where device interface does not already exist on D-Bus
+ Verify callback is called later when interface is added
+ Verify callback is passed the correct data

Change-Id: If089f4720012d837b464137b5d3c8fba5dbdc335
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com>

show more ...


# 3cc348ce 29-May-2024 Shawn McCarney <shawnmm@us.ibm.com>

Create class for finding compatible system types

Create class for finding the list of compatible system types for the
current system.

Use the new D-Bus interface
xyz.openbmc_project.Inventory.Decor

Create class for finding compatible system types

Create class for finding the list of compatible system types for the
current system.

Use the new D-Bus interface
xyz.openbmc_project.Inventory.Decorator.Compatible to find the system
types.

Tested:
* See test plan at
https://gist.github.com/smccarney/7bfc20b258cd6ccfba908730102a32dd

Change-Id: I47063642a601991aac8e63f39d8d1f29c4896db0
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com>

show more ...