Merge "Batterystats BLE results counter takes in count" into oc-dev
diff --git a/core/java/com/android/internal/app/IBatteryStats.aidl b/core/java/com/android/internal/app/IBatteryStats.aidl
index 373f4bb..78566df 100644
--- a/core/java/com/android/internal/app/IBatteryStats.aidl
+++ b/core/java/com/android/internal/app/IBatteryStats.aidl
@@ -132,7 +132,7 @@
void noteBleScanStarted(in WorkSource ws);
void noteBleScanStopped(in WorkSource ws);
void noteResetBleScan();
- void noteBleScanResult(in WorkSource ws);
+ void noteBleScanResults(in WorkSource ws, int numNewResults);
HealthStatsParceler takeUidSnapshot(int uid);
HealthStatsParceler[] takeUidSnapshots(in int[] uid);
diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java
index be4df51..0d0d099 100644
--- a/core/java/com/android/internal/os/BatteryStatsImpl.java
+++ b/core/java/com/android/internal/os/BatteryStatsImpl.java
@@ -935,6 +935,10 @@
mCount.incrementAndGet();
}
+ void addAtomic(int delta) {
+ mCount.addAndGet(delta);
+ }
+
/**
* Clear state of this counter.
*/
@@ -4835,11 +4839,11 @@
}
}
- public void noteBluetoothScanResultFromSourceLocked(WorkSource ws) {
+ public void noteBluetoothScanResultsFromSourceLocked(WorkSource ws, int numNewResults) {
final int N = ws.size();
for (int i = 0; i < N; i++) {
int uid = mapUid(ws.get(i));
- getUidStatsLocked(uid).noteBluetoothScanResultLocked();
+ getUidStatsLocked(uid).noteBluetoothScanResultsLocked(numNewResults);
}
}
@@ -6050,8 +6054,8 @@
return mBluetoothScanResultCounter;
}
- public void noteBluetoothScanResultLocked() {
- createBluetoothScanResultCounterLocked().stepAtomic();
+ public void noteBluetoothScanResultsLocked(int numNewResults) {
+ createBluetoothScanResultCounterLocked().addAtomic(numNewResults);
}
@Override
diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryStatsNoteTest.java b/core/tests/coretests/src/com/android/internal/os/BatteryStatsNoteTest.java
index 1dced75..e374e11 100644
--- a/core/tests/coretests/src/com/android/internal/os/BatteryStatsNoteTest.java
+++ b/core/tests/coretests/src/com/android/internal/os/BatteryStatsNoteTest.java
@@ -29,15 +29,15 @@
private static final int UID = 10500;
private static final WorkSource WS = new WorkSource(UID);
- /** Test that BatteryStatsImpl.Uid.noteBluetoothScanResultLocked. */
+ /** Test that BatteryStatsImpl.Uid.noteBluetoothScanResultsLocked. */
@SmallTest
public void testNoteBluetoothScanResultLocked() throws Exception {
MockBatteryStatsImpl bi = new MockBatteryStatsImpl(new MockClocks());
bi.updateTimeBasesLocked(true, true, 0, 0);
- bi.noteBluetoothScanResultFromSourceLocked(WS);
- bi.noteBluetoothScanResultFromSourceLocked(WS);
- assertEquals(2,
+ bi.noteBluetoothScanResultsFromSourceLocked(WS, 1);
+ bi.noteBluetoothScanResultsFromSourceLocked(WS, 100);
+ assertEquals(101,
bi.getUidStats().get(UID).getBluetoothScanResultCounter()
.getCountLocked(STATS_SINCE_CHARGED));
}
diff --git a/services/core/java/com/android/server/am/BatteryStatsService.java b/services/core/java/com/android/server/am/BatteryStatsService.java
index 7a46248..11fc40b 100644
--- a/services/core/java/com/android/server/am/BatteryStatsService.java
+++ b/services/core/java/com/android/server/am/BatteryStatsService.java
@@ -966,10 +966,10 @@
}
@Override
- public void noteBleScanResult(WorkSource ws) {
+ public void noteBleScanResults(WorkSource ws, int numNewResults) {
enforceCallingPermission();
synchronized (mStats) {
- mStats.noteBluetoothScanResultFromSourceLocked(ws);
+ mStats.noteBluetoothScanResultsFromSourceLocked(ws, numNewResults);
}
}