BatteryStats: Use proper power calculator when energy data is received

We check for the presence of energy data when determining whether to use
the WiFiPowerCalculator or WiFiPowerEstimator. Since we can receive this data
later, we need to switch to the WiFiPowerCalculator if we weren't using it before.

We can't ask the hardware if it supports energy data because that would involve a call into
WiFiManagerService, which can cause a deadlock if we are holding the BatteryStatsService lock
while using this class.

Bug:22776010
Change-Id: Id685d487c56595eab1d382f49da9417a423bb517
1 file changed