Merge changes from topic "health2-health1"

* changes:
  storaged: update for using 1.0::HealthInfo.
  Health@2.0: uses @1.0::HealthInfo
diff --git a/healthd/Health.cpp b/healthd/Health.cpp
index ec05398..74f3eec 100644
--- a/healthd/Health.cpp
+++ b/healthd/Health.cpp
@@ -120,7 +120,7 @@
     }
 
     // Retrieve all information and call healthd_mode_ops->battery_update, which calls
-    // updateAndNotify.
+    // notifyListeners.
     bool chargerOnline = battery_monitor_->update();
 
     // adjust uevent / wakealarm periods
@@ -129,19 +129,10 @@
     return Result::SUCCESS;
 }
 
-void Health::updateAndNotify(HealthInfo* info) {
-    // update 2.0 specific fields
-    struct BatteryProperty prop;
-    if (battery_monitor_->getProperty(BATTERY_PROP_CURRENT_AVG, &prop) == OK)
-        info->batteryCurrentAverage = static_cast<int32_t>(prop.valueInt64);
-    if (battery_monitor_->getProperty(BATTERY_PROP_CAPACITY, &prop) == OK)
-        info->batteryCapacity = static_cast<int32_t>(prop.valueInt64);
-    if (battery_monitor_->getProperty(BATTERY_PROP_ENERGY_COUNTER, &prop) == OK)
-        info->energyCounter = prop.valueInt64;
-
+void Health::notifyListeners(const HealthInfo& info) {
     std::lock_guard<std::mutex> _lock(callbacks_lock_);
     for (auto it = callbacks_.begin(); it != callbacks_.end();) {
-        auto ret = (*it)->healthInfoChanged(*info);
+        auto ret = (*it)->healthInfoChanged(info);
         if (!ret.isOk() && ret.isDeadObject()) {
             it = callbacks_.erase(it);
         } else {
diff --git a/healthd/HealthService.cpp b/healthd/HealthService.cpp
index 29a29ed..e8a1a85 100644
--- a/healthd/HealthService.cpp
+++ b/healthd/HealthService.cpp
@@ -28,8 +28,8 @@
 
 using android::hardware::IPCThreadState;
 using android::hardware::configureRpcThreadpool;
+using android::hardware::health::V1_0::HealthInfo;
 using android::hardware::health::V1_0::hal_conversion::convertToHealthInfo;
-using android::hardware::health::V2_0::HealthInfo;
 using android::hardware::health::V2_0::IHealth;
 using android::hardware::health::V2_0::implementation::Health;
 
@@ -89,9 +89,9 @@
     // Implementation-defined update logic goes here. An implementation
     // can make modifications to prop before broadcasting it to all callbacks.
 
-    HealthInfo info{};
-    convertToHealthInfo(prop, info.legacy);
-    static_cast<Health*>(gHealth.get())->updateAndNotify(&info);
+    HealthInfo info;
+    convertToHealthInfo(prop, info);
+    static_cast<Health*>(gHealth.get())->notifyListeners(info);
 }
 
 static struct healthd_mode_ops healthd_mode_service_2_0_ops = {
diff --git a/healthd/include/health2/Health.h b/healthd/include/health2/Health.h
index d390b92..4e78380 100644
--- a/healthd/include/health2/Health.h
+++ b/healthd/include/health2/Health.h
@@ -16,6 +16,7 @@
 namespace implementation {
 
 using V1_0::BatteryStatus;
+using V1_0::HealthInfo;
 
 using ::android::hidl::base::V1_0::IBase;
 
@@ -24,7 +25,7 @@
     Health(struct healthd_config* c);
 
     // TODO(b/62229583): clean up and hide these functions.
-    void updateAndNotify(HealthInfo* info);
+    void notifyListeners(const HealthInfo& info);
 
     // Methods from IHealth follow.
     Return<Result> registerCallback(const sp<IHealthInfoCallback>& callback) override;
diff --git a/storaged/include/storaged.h b/storaged/include/storaged.h
index f9ab2d5..edaa32f 100644
--- a/storaged/include/storaged.h
+++ b/storaged/include/storaged.h
@@ -130,7 +130,7 @@
 
     void init_health_service();
     virtual ::android::hardware::Return<void> healthInfoChanged(
-        const ::android::hardware::health::V2_0::HealthInfo& info);
+        const ::android::hardware::health::V1_0::HealthInfo& info);
     void serviceDied(uint64_t cookie, const wp<::android::hidl::base::V1_0::IBase>& who);
 
     void report_storage_info();
diff --git a/storaged/storaged.cpp b/storaged/storaged.cpp
index c94137c..e5130c3 100644
--- a/storaged/storaged.cpp
+++ b/storaged/storaged.cpp
@@ -62,7 +62,7 @@
 
 using android::hardware::health::V1_0::BatteryStatus;
 using android::hardware::health::V1_0::toString;
-using android::hardware::health::V2_0::HealthInfo;
+using android::hardware::health::V1_0::HealthInfo;
 using android::hardware::health::V2_0::IHealth;
 using android::hardware::health::V2_0::Result;
 using android::hardware::interfacesEqual;
@@ -86,7 +86,7 @@
 }
 
 Return<void> storaged_t::healthInfoChanged(const HealthInfo& props) {
-    mUidm.set_charger_state(is_charger_on(props.legacy.batteryStatus));
+    mUidm.set_charger_state(is_charger_on(props.batteryStatus));
     return android::hardware::Void();
 }