xref: /openbmc/bmcweb/features/redfish/include/utils/dbus_utils.hpp (revision 351053f210e8b233f680bde66d9ea9760c22d848)
1*351053f2SKrzysztof Grobelny #pragma once
2*351053f2SKrzysztof Grobelny 
3*351053f2SKrzysztof Grobelny #include "logging.hpp"
4*351053f2SKrzysztof Grobelny 
5*351053f2SKrzysztof Grobelny #include <sdbusplus/unpack_properties.hpp>
6*351053f2SKrzysztof Grobelny 
7*351053f2SKrzysztof Grobelny namespace redfish
8*351053f2SKrzysztof Grobelny {
9*351053f2SKrzysztof Grobelny namespace dbus_utils
10*351053f2SKrzysztof Grobelny {
11*351053f2SKrzysztof Grobelny 
12*351053f2SKrzysztof Grobelny struct UnpackErrorPrinter
13*351053f2SKrzysztof Grobelny {
14*351053f2SKrzysztof Grobelny     void operator()(const sdbusplus::UnpackErrorReason reason,
15*351053f2SKrzysztof Grobelny                     const std::string& property) const noexcept
16*351053f2SKrzysztof Grobelny     {
17*351053f2SKrzysztof Grobelny         BMCWEB_LOG_DEBUG
18*351053f2SKrzysztof Grobelny             << "DBUS property error in property: " << property << ", reason: "
19*351053f2SKrzysztof Grobelny             << static_cast<
20*351053f2SKrzysztof Grobelny                    std::underlying_type_t<sdbusplus::UnpackErrorReason>>(
21*351053f2SKrzysztof Grobelny                    reason);
22*351053f2SKrzysztof Grobelny     }
23*351053f2SKrzysztof Grobelny };
24*351053f2SKrzysztof Grobelny 
25*351053f2SKrzysztof Grobelny } // namespace dbus_utils
26*351053f2SKrzysztof Grobelny } // namespace redfish
27