use sdbusplus unpack syntax

Rather than defining a variable and then reading it from a message,
sdbusplus also supports directly unpack-ing from the message.  Use
this syntax instead as it is more efficient and succinct.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I37b8d2921b175f4050623935c0f4bffc0e448c70
diff --git a/src/button_handler.cpp b/src/button_handler.cpp
index 99ce739..ab52c66 100644
--- a/src/button_handler.cpp
+++ b/src/button_handler.cpp
@@ -226,8 +226,9 @@
     try
     {
         auto result = bus.call(method);
-        std::map<std::string, std::vector<std::string>> objectData;
-        result.read(objectData);
+        auto objectData =
+            result.unpack<std::map<std::string, std::vector<std::string>>>();
+
         return objectData.begin()->first;
     }
     catch (const sdbusplus::exception_t& e)
@@ -252,8 +253,7 @@
         method.append(hostSelectorIface, "Position");
         auto result = bus.call(method);
 
-        std::variant<size_t> HSPositionVariant;
-        result.read(HSPositionVariant);
+        auto HSPositionVariant = result.unpack<std::variant<size_t>>();
 
         auto position = std::get<size_t>(HSPositionVariant);
         return position;
@@ -273,8 +273,7 @@
     method.append(hostIface, "CurrentHostState");
     auto result = bus.call(method);
 
-    std::variant<std::string> state;
-    result.read(state);
+    auto state = result.unpack<std::variant<std::string>>();
 
     return Host::HostState::Off !=
            Host::convertHostStateFromString(std::get<std::string>(state));
@@ -415,8 +414,7 @@
 {
     try
     {
-        uint64_t time;
-        msg.read(time);
+        auto time = msg.unpack<uint64_t>();
 
         handlePowerEvent(PowerEvent::powerReleased, msg.get_path(),
                          std::chrono::microseconds(time));
@@ -464,8 +462,7 @@
         method.append(ledGroupIface, "Asserted");
         auto result = bus.call(method);
 
-        std::variant<bool> state;
-        result.read(state);
+        auto state = result.unpack<std::variant<bool>>();
 
         state = !std::get<bool>(state);
 
@@ -503,8 +500,8 @@
                                 phosphor::button::propertyIface, "GetAll");
         method.append(phosphor::button::hostSelectorIface);
         auto result = bus.call(method);
-        std::unordered_map<std::string, std::variant<size_t>> properties;
-        result.read(properties);
+        auto properties = result.unpack<
+            std::unordered_map<std::string, std::variant<size_t>>>();
 
         auto maxPosition = std::get<size_t>(properties.at("MaxPosition"));
         auto position = std::get<size_t>(properties.at("Position"));
diff --git a/src/host_then_chassis_poweroff.cpp b/src/host_then_chassis_poweroff.cpp
index 4489364..54431c4 100644
--- a/src/host_then_chassis_poweroff.cpp
+++ b/src/host_then_chassis_poweroff.cpp
@@ -193,8 +193,7 @@
         method.append(interface::chassisState, "CurrentPowerState");
         auto result = bus.call(method);
 
-        std::variant<std::string> state;
-        result.read(state);
+        auto state = result.unpack<std::variant<std::string>>();
 
         chassisState =
             Chassis::convertPowerStateFromString(std::get<std::string>(state));
@@ -220,8 +219,7 @@
         method.append(interface::bmcState, "CurrentBMCState");
         auto result = bus.call(method);
 
-        std::variant<std::string> state;
-        result.read(state);
+        auto state = result.unpack<std::variant<std::string>>();
 
         bmcState = BMC::convertBMCStateFromString(std::get<std::string>(state));
     }