Merge "BatteryStatsService - call PermissionEnforcer helper on methods annotated with @EnforcePermission"
diff --git a/services/core/java/com/android/server/am/BatteryStatsService.java b/services/core/java/com/android/server/am/BatteryStatsService.java
index 75d1f68..d1bcf87 100644
--- a/services/core/java/com/android/server/am/BatteryStatsService.java
+++ b/services/core/java/com/android/server/am/BatteryStatsService.java
@@ -731,6 +731,8 @@
@Override
@EnforcePermission(BATTERY_STATS)
public List<BatteryUsageStats> getBatteryUsageStats(List<BatteryUsageStatsQuery> queries) {
+ super.getBatteryUsageStats_enforcePermission();
+
awaitCompletion();
if (mBatteryUsageStatsProvider.shouldUpdateStats(queries,
@@ -846,6 +848,8 @@
@Override
@EnforcePermission(BATTERY_STATS)
public long computeBatteryScreenOffRealtimeMs() {
+ super.computeBatteryScreenOffRealtimeMs_enforcePermission();
+
synchronized (mStats) {
final long curTimeUs = SystemClock.elapsedRealtimeNanos() / 1000;
long timeUs = mStats.computeBatteryScreenOffRealtime(curTimeUs,
@@ -857,6 +861,8 @@
@Override
@EnforcePermission(BATTERY_STATS)
public long getScreenOffDischargeMah() {
+ super.getScreenOffDischargeMah_enforcePermission();
+
synchronized (mStats) {
long dischargeUah = mStats.getUahDischargeScreenOff(BatteryStats.STATS_SINCE_CHARGED);
return dischargeUah / 1000;
@@ -866,6 +872,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteEvent(final int code, final String name, final int uid) {
+ super.noteEvent_enforcePermission();
+
if (name == null) {
// TODO(b/194733136): Replace with an IllegalArgumentException throw.
Slog.wtfStack(TAG, "noteEvent called with null name. code = " + code);
@@ -886,6 +894,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteSyncStart(final String name, final int uid) {
+ super.noteSyncStart_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -902,6 +912,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteSyncFinish(final String name, final int uid) {
+ super.noteSyncFinish_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -919,6 +931,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteJobStart(final String name, final int uid) {
+ super.noteJobStart_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -934,6 +948,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteJobFinish(final String name, final int uid, final int stopReason) {
+ super.noteJobFinish_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1007,6 +1023,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStartWakelock(final int uid, final int pid, final String name,
final String historyName, final int type, final boolean unimportantForLogging) {
+ super.noteStartWakelock_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1023,6 +1041,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStopWakelock(final int uid, final int pid, final String name,
final String historyName, final int type) {
+ super.noteStopWakelock_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1039,6 +1059,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStartWakelockFromSource(final WorkSource ws, final int pid, final String name,
final String historyName, final int type, final boolean unimportantForLogging) {
+ super.noteStartWakelockFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1058,6 +1080,8 @@
final String historyName, final int type, final WorkSource newWs, final int newPid,
final String newName, final String newHistoryName, final int newType,
final boolean newUnimportantForLogging) {
+ super.noteChangeWakelockFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
final WorkSource localNewWs = newWs != null ? new WorkSource(newWs) : null;
synchronized (mLock) {
@@ -1077,6 +1101,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStopWakelockFromSource(final WorkSource ws, final int pid, final String name,
final String historyName, final int type) {
+ super.noteStopWakelockFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1094,6 +1120,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteLongPartialWakelockStart(final String name, final String historyName,
final int uid) {
+ super.noteLongPartialWakelockStart_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1110,6 +1138,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteLongPartialWakelockStartFromSource(final String name, final String historyName,
final WorkSource workSource) {
+ super.noteLongPartialWakelockStartFromSource_enforcePermission();
+
final WorkSource localWs = workSource != null ? new WorkSource(workSource) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1127,6 +1157,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteLongPartialWakelockFinish(final String name, final String historyName,
final int uid) {
+ super.noteLongPartialWakelockFinish_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1143,6 +1175,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteLongPartialWakelockFinishFromSource(final String name, final String historyName,
final WorkSource workSource) {
+ super.noteLongPartialWakelockFinishFromSource_enforcePermission();
+
final WorkSource localWs = workSource != null ? new WorkSource(workSource) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1159,6 +1193,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStartSensor(final int uid, final int sensor) {
+ super.noteStartSensor_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1175,6 +1211,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStopSensor(final int uid, final int sensor) {
+ super.noteStopSensor_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1191,6 +1229,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteVibratorOn(final int uid, final long durationMillis) {
+ super.noteVibratorOn_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1205,6 +1245,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteVibratorOff(final int uid) {
+ super.noteVibratorOff_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1219,6 +1261,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteGpsChanged(final WorkSource oldWs, final WorkSource newWs) {
+ super.noteGpsChanged_enforcePermission();
+
final WorkSource localOldWs = oldWs != null ? new WorkSource(oldWs) : null;
final WorkSource localNewWs = newWs != null ? new WorkSource(newWs) : null;
synchronized (mLock) {
@@ -1235,6 +1279,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteGpsSignalQuality(final int signalLevel) {
+ super.noteGpsSignalQuality_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1249,6 +1295,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteScreenState(final int state) {
+ super.noteScreenState_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1267,6 +1315,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteScreenBrightness(final int brightness) {
+ super.noteScreenBrightness_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1282,6 +1332,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteUserActivity(final int uid, final int event) {
+ super.noteUserActivity_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1296,6 +1348,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWakeUp(final String reason, final int reasonUid) {
+ super.noteWakeUp_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1310,6 +1364,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteInteractive(final boolean interactive) {
+ super.noteInteractive_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
mHandler.post(() -> {
@@ -1323,6 +1379,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteConnectivityChanged(final int type, final String extra) {
+ super.noteConnectivityChanged_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1338,6 +1396,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteMobileRadioPowerState(final int powerState, final long timestampNs,
final int uid) {
+ super.noteMobileRadioPowerState_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1364,6 +1424,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void notePhoneOn() {
+ super.notePhoneOn_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1378,6 +1440,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void notePhoneOff() {
+ super.notePhoneOff_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1392,6 +1456,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void notePhoneSignalStrength(final SignalStrength signalStrength) {
+ super.notePhoneSignalStrength_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1407,6 +1473,8 @@
@EnforcePermission(UPDATE_DEVICE_STATS)
public void notePhoneDataConnectionState(final int dataType, final boolean hasData,
final int serviceType, final int nrFrequency) {
+ super.notePhoneDataConnectionState_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1422,6 +1490,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void notePhoneState(final int state) {
+ super.notePhoneState_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1437,6 +1507,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiOn() {
+ super.noteWifiOn_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1453,6 +1525,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiOff() {
+ super.noteWifiOff_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1469,6 +1543,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStartAudio(final int uid) {
+ super.noteStartAudio_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1485,6 +1561,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStopAudio(final int uid) {
+ super.noteStopAudio_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1501,6 +1579,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStartVideo(final int uid) {
+ super.noteStartVideo_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1517,6 +1597,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStopVideo(final int uid) {
+ super.noteStopVideo_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1533,6 +1615,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteResetAudio() {
+ super.noteResetAudio_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1549,6 +1633,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteResetVideo() {
+ super.noteResetVideo_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1565,6 +1651,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteFlashlightOn(final int uid) {
+ super.noteFlashlightOn_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1581,6 +1669,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteFlashlightOff(final int uid) {
+ super.noteFlashlightOff_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1597,6 +1687,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStartCamera(final int uid) {
+ super.noteStartCamera_enforcePermission();
+
if (DBG) Slog.d(TAG, "begin noteStartCamera");
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1615,6 +1707,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteStopCamera(final int uid) {
+ super.noteStopCamera_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1631,6 +1725,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteResetCamera() {
+ super.noteResetCamera_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1647,6 +1743,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteResetFlashlight() {
+ super.noteResetFlashlight_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1663,6 +1761,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiRadioPowerState(final int powerState, final long tsNanos, final int uid) {
+ super.noteWifiRadioPowerState_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1694,6 +1794,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiRunning(final WorkSource ws) {
+ super.noteWifiRunning_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1712,6 +1814,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiRunningChanged(final WorkSource oldWs, final WorkSource newWs) {
+ super.noteWifiRunningChanged_enforcePermission();
+
final WorkSource localOldWs = oldWs != null ? new WorkSource(oldWs) : null;
final WorkSource localNewWs = newWs != null ? new WorkSource(newWs) : null;
synchronized (mLock) {
@@ -1733,6 +1837,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiStopped(final WorkSource ws) {
+ super.noteWifiStopped_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : ws;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1750,6 +1856,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiState(final int wifiState, final String accessPoint) {
+ super.noteWifiState_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
mHandler.post(() -> {
@@ -1763,6 +1871,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiSupplicantStateChanged(final int supplState, final boolean failedAuth) {
+ super.noteWifiSupplicantStateChanged_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1778,6 +1888,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiRssiChanged(final int newRssi) {
+ super.noteWifiRssiChanged_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1792,6 +1904,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteFullWifiLockAcquired(final int uid) {
+ super.noteFullWifiLockAcquired_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1806,6 +1920,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteFullWifiLockReleased(final int uid) {
+ super.noteFullWifiLockReleased_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1820,6 +1936,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiScanStarted(final int uid) {
+ super.noteWifiScanStarted_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1834,6 +1952,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiScanStopped(final int uid) {
+ super.noteWifiScanStopped_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1848,6 +1968,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiMulticastEnabled(final int uid) {
+ super.noteWifiMulticastEnabled_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1862,6 +1984,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiMulticastDisabled(final int uid) {
+ super.noteWifiMulticastDisabled_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -1876,6 +2000,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteFullWifiLockAcquiredFromSource(final WorkSource ws) {
+ super.noteFullWifiLockAcquiredFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1892,6 +2018,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteFullWifiLockReleasedFromSource(final WorkSource ws) {
+ super.noteFullWifiLockReleasedFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1908,6 +2036,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiScanStartedFromSource(final WorkSource ws) {
+ super.noteWifiScanStartedFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1923,6 +2053,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiScanStoppedFromSource(final WorkSource ws) {
+ super.noteWifiScanStoppedFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1938,6 +2070,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiBatchedScanStartedFromSource(final WorkSource ws, final int csph) {
+ super.noteWifiBatchedScanStartedFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1954,6 +2088,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiBatchedScanStoppedFromSource(final WorkSource ws) {
+ super.noteWifiBatchedScanStoppedFromSource_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -1970,6 +2106,8 @@
@Override
@EnforcePermission(anyOf = {NETWORK_STACK, PERMISSION_MAINLINE_NETWORK_STACK})
public void noteNetworkInterfaceForTransports(final String iface, int[] transportTypes) {
+ super.noteNetworkInterfaceForTransports_enforcePermission();
+
synchronized (mLock) {
mHandler.post(() -> {
mStats.noteNetworkInterfaceForTransports(iface, transportTypes);
@@ -1983,6 +2121,8 @@
// During device boot, qtaguid isn't enabled until after the inital
// loading of battery stats. Now that they're enabled, take our initial
// snapshot for future delta calculation.
+ super.noteNetworkStatsEnabled_enforcePermission();
+
synchronized (mLock) {
// Still schedule it on the handler to make sure we have existing pending works done
mHandler.post(() -> {
@@ -1996,6 +2136,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteDeviceIdleMode(final int mode, final String activeReason, final int activeUid) {
+ super.noteDeviceIdleMode_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -2039,6 +2181,8 @@
@Override
@EnforcePermission(BLUETOOTH_CONNECT)
public void noteBluetoothOn(int uid, int reason, String packageName) {
+ super.noteBluetoothOn_enforcePermission();
+
FrameworkStatsLog.write_non_chained(FrameworkStatsLog.BLUETOOTH_ENABLED_STATE_CHANGED,
Binder.getCallingUid(), null,
FrameworkStatsLog.BLUETOOTH_ENABLED_STATE_CHANGED__STATE__ENABLED,
@@ -2051,6 +2195,8 @@
@Override
@EnforcePermission(BLUETOOTH_CONNECT)
public void noteBluetoothOff(int uid, int reason, String packageName) {
+ super.noteBluetoothOff_enforcePermission();
+
FrameworkStatsLog.write_non_chained(FrameworkStatsLog.BLUETOOTH_ENABLED_STATE_CHANGED,
Binder.getCallingUid(), null,
FrameworkStatsLog.BLUETOOTH_ENABLED_STATE_CHANGED__STATE__DISABLED,
@@ -2060,6 +2206,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteBleScanStarted(final WorkSource ws, final boolean isUnoptimized) {
+ super.noteBleScanStarted_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -2076,6 +2224,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteBleScanStopped(final WorkSource ws, final boolean isUnoptimized) {
+ super.noteBleScanStopped_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -2092,6 +2242,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteBleScanReset() {
+ super.noteBleScanReset_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -2106,6 +2258,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteBleScanResults(final WorkSource ws, final int numNewResults) {
+ super.noteBleScanResults_enforcePermission();
+
final WorkSource localWs = ws != null ? new WorkSource(ws) : null;
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
@@ -2122,6 +2276,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteWifiControllerActivity(final WifiActivityEnergyInfo info) {
+ super.noteWifiControllerActivity_enforcePermission();
+
if (info == null || !info.isValid()) {
Slog.e(TAG, "invalid wifi data given: " + info);
return;
@@ -2142,6 +2298,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteBluetoothControllerActivity(final BluetoothActivityEnergyInfo info) {
+ super.noteBluetoothControllerActivity_enforcePermission();
+
if (info == null || !info.isValid()) {
Slog.e(TAG, "invalid bluetooth data given: " + info);
return;
@@ -2162,6 +2320,8 @@
@Override
@EnforcePermission(UPDATE_DEVICE_STATS)
public void noteModemControllerActivity(final ModemActivityInfo info) {
+ super.noteModemControllerActivity_enforcePermission();
+
if (info == null) {
Slog.e(TAG, "invalid modem data given: " + info);
return;
@@ -2188,6 +2348,8 @@
public void setBatteryState(final int status, final int health, final int plugType,
final int level, final int temp, final int volt, final int chargeUAh,
final int chargeFullUAh, final long chargeTimeToFullSeconds) {
+ super.setBatteryState_enforcePermission();
+
synchronized (mLock) {
final long elapsedRealtime = SystemClock.elapsedRealtime();
final long uptime = SystemClock.uptimeMillis();
@@ -2230,12 +2392,16 @@
@Override
@EnforcePermission(BATTERY_STATS)
public long getAwakeTimeBattery() {
+ super.getAwakeTimeBattery_enforcePermission();
+
return mStats.getAwakeTimeBattery();
}
@Override
@EnforcePermission(BATTERY_STATS)
public long getAwakeTimePlugged() {
+ super.getAwakeTimePlugged_enforcePermission();
+
return mStats.getAwakeTimePlugged();
}
@@ -2738,6 +2904,8 @@
@EnforcePermission(anyOf = {UPDATE_DEVICE_STATS, BATTERY_STATS})
public CellularBatteryStats getCellularBatteryStats() {
// Wait for the completion of pending works if there is any
+ super.getCellularBatteryStats_enforcePermission();
+
awaitCompletion();
synchronized (mStats) {
return mStats.getCellularBatteryStats();
@@ -2752,6 +2920,8 @@
@EnforcePermission(anyOf = {UPDATE_DEVICE_STATS, BATTERY_STATS})
public WifiBatteryStats getWifiBatteryStats() {
// Wait for the completion of pending works if there is any
+ super.getWifiBatteryStats_enforcePermission();
+
awaitCompletion();
synchronized (mStats) {
return mStats.getWifiBatteryStats();
@@ -2766,6 +2936,8 @@
@EnforcePermission(BATTERY_STATS)
public GpsBatteryStats getGpsBatteryStats() {
// Wait for the completion of pending works if there is any
+ super.getGpsBatteryStats_enforcePermission();
+
awaitCompletion();
synchronized (mStats) {
return mStats.getGpsBatteryStats();
@@ -2780,6 +2952,8 @@
@EnforcePermission(BATTERY_STATS)
public WakeLockStats getWakeLockStats() {
// Wait for the completion of pending works if there is any
+ super.getWakeLockStats_enforcePermission();
+
awaitCompletion();
synchronized (mStats) {
return mStats.getWakeLockStats();
@@ -2794,6 +2968,8 @@
@EnforcePermission(BATTERY_STATS)
public BluetoothBatteryStats getBluetoothBatteryStats() {
// Wait for the completion of pending works if there is any
+ super.getBluetoothBatteryStats_enforcePermission();
+
awaitCompletion();
synchronized (mStats) {
return mStats.getBluetoothBatteryStats();
@@ -2901,6 +3077,8 @@
*/
@EnforcePermission(POWER_SAVER)
public boolean setChargingStateUpdateDelayMillis(int delayMillis) {
+ super.setChargingStateUpdateDelayMillis_enforcePermission();
+
final long ident = Binder.clearCallingIdentity();
try {
@@ -3051,6 +3229,8 @@
@Override
@EnforcePermission(DEVICE_POWER)
public void setChargerAcOnline(boolean online, boolean forceUpdate) {
+ super.setChargerAcOnline_enforcePermission();
+
mBatteryManagerInternal.setChargerAcOnline(online, forceUpdate);
}
@@ -3060,6 +3240,8 @@
@Override
@EnforcePermission(DEVICE_POWER)
public void setBatteryLevel(int level, boolean forceUpdate) {
+ super.setBatteryLevel_enforcePermission();
+
mBatteryManagerInternal.setBatteryLevel(level, forceUpdate);
}
@@ -3069,6 +3251,8 @@
@Override
@EnforcePermission(DEVICE_POWER)
public void unplugBattery(boolean forceUpdate) {
+ super.unplugBattery_enforcePermission();
+
mBatteryManagerInternal.unplugBattery(forceUpdate);
}
@@ -3078,6 +3262,8 @@
@Override
@EnforcePermission(DEVICE_POWER)
public void resetBattery(boolean forceUpdate) {
+ super.resetBattery_enforcePermission();
+
mBatteryManagerInternal.resetBattery(forceUpdate);
}
@@ -3087,6 +3273,8 @@
@Override
@EnforcePermission(DEVICE_POWER)
public void suspendBatteryInput() {
+ super.suspendBatteryInput_enforcePermission();
+
mBatteryManagerInternal.suspendBatteryInput();
}
}