Loading services/core/java/com/android/server/power/stats/processor/PowerStatsAggregator.java +108 −95 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.server.power.stats.processor; import android.annotation.NonNull; import android.os.BatteryConsumer; import android.os.BatteryStats; import android.util.Slog; import android.util.SparseBooleanArray; import com.android.internal.annotations.VisibleForTesting; Loading @@ -33,6 +34,7 @@ import java.util.function.Consumer; * {@link AggregatedPowerStats} that adds up power stats from the samples found in battery history. */ public class PowerStatsAggregator { private static final String TAG = "PowerStatsAggregator"; private static final long UNINITIALIZED = -1; private final AggregatedPowerStatsConfig mAggregatedPowerStatsConfig; private final SparseBooleanArray mEnabledComponents = Loading Loading @@ -81,7 +83,19 @@ public class PowerStatsAggregator { */ public void aggregatePowerStats(BatteryStatsHistory history, long startTimeMs, long endTimeMs, Consumer<AggregatedPowerStats> consumer) { try { synchronized (this) { aggregatePowerStatsLocked(history, startTimeMs, endTimeMs, consumer); } } catch (Exception e) { Slog.e(TAG, "Cannot perform power stats aggregation" + " because battery stats history may be corrupted", e); history.reset(); } } private void aggregatePowerStatsLocked(BatteryStatsHistory history, long startTimeMs, long endTimeMs, Consumer<AggregatedPowerStats> consumer) { if (mStats == null) { mStats = new AggregatedPowerStats(mAggregatedPowerStatsConfig, mEnabledComponents); } Loading Loading @@ -192,7 +206,6 @@ public class PowerStatsAggregator { mStats.reset(); // to free up memory } } /** * Reset to prepare for a new aggregation session. Loading Loading
services/core/java/com/android/server/power/stats/processor/PowerStatsAggregator.java +108 −95 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.server.power.stats.processor; import android.annotation.NonNull; import android.os.BatteryConsumer; import android.os.BatteryStats; import android.util.Slog; import android.util.SparseBooleanArray; import com.android.internal.annotations.VisibleForTesting; Loading @@ -33,6 +34,7 @@ import java.util.function.Consumer; * {@link AggregatedPowerStats} that adds up power stats from the samples found in battery history. */ public class PowerStatsAggregator { private static final String TAG = "PowerStatsAggregator"; private static final long UNINITIALIZED = -1; private final AggregatedPowerStatsConfig mAggregatedPowerStatsConfig; private final SparseBooleanArray mEnabledComponents = Loading Loading @@ -81,7 +83,19 @@ public class PowerStatsAggregator { */ public void aggregatePowerStats(BatteryStatsHistory history, long startTimeMs, long endTimeMs, Consumer<AggregatedPowerStats> consumer) { try { synchronized (this) { aggregatePowerStatsLocked(history, startTimeMs, endTimeMs, consumer); } } catch (Exception e) { Slog.e(TAG, "Cannot perform power stats aggregation" + " because battery stats history may be corrupted", e); history.reset(); } } private void aggregatePowerStatsLocked(BatteryStatsHistory history, long startTimeMs, long endTimeMs, Consumer<AggregatedPowerStats> consumer) { if (mStats == null) { mStats = new AggregatedPowerStats(mAggregatedPowerStatsConfig, mEnabledComponents); } Loading Loading @@ -192,7 +206,6 @@ public class PowerStatsAggregator { mStats.reset(); // to free up memory } } /** * Reset to prepare for a new aggregation session. Loading