diff options
author | Kweku Adams <kwekua@google.com> | 2023-12-05 23:18:27 +0000 |
---|---|---|
committer | Kweku Adams <kwekua@google.com> | 2023-12-05 23:18:27 +0000 |
commit | 1ffaf3be517af37ba4f170b77087af8484cbf5e6 (patch) | |
tree | a76af5b787b20f85ded80eecaba254a37fd5b2dc /apex | |
parent | cf0d71f83c1084fa5e4c60663bb9aaa8b8cd4529 (diff) | |
download | base-1ffaf3be517af37ba4f170b77087af8484cbf5e6.tar.gz |
Add shell command to get aconfig flag values.
Also include the flag value in the job dump.
Bug: 314877619
Test: atest CtsJobSchedulerTestCases:JobInfoTest
Change-Id: Idfb507de07354c97af1d39f6cc67b09fa891d5b9
Diffstat (limited to 'apex')
-rw-r--r-- | apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java | 8 | ||||
-rw-r--r-- | apex/jobscheduler/service/java/com/android/server/job/JobSchedulerShellCommand.java | 27 |
2 files changed, 35 insertions, 0 deletions
diff --git a/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java b/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java index f97100bf2e9b..7e142a5ddd7b 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java +++ b/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java @@ -5365,6 +5365,14 @@ public class JobSchedulerService extends com.android.server.SystemService } pw.println(); + pw.println("Aconfig flags:"); + pw.increaseIndent(); + pw.print(Flags.FLAG_THROW_ON_UNSUPPORTED_BIAS_USAGE, + Flags.throwOnUnsupportedBiasUsage()); + pw.println(); + pw.decreaseIndent(); + pw.println(); + for (int i = mJobRestrictions.size() - 1; i >= 0; i--) { mJobRestrictions.get(i).dumpConstants(pw); } diff --git a/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerShellCommand.java b/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerShellCommand.java index 293088d9236f..c14efae3fa62 100644 --- a/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerShellCommand.java +++ b/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerShellCommand.java @@ -58,6 +58,8 @@ public final class JobSchedulerShellCommand extends BasicShellCommandHandler { return cancelJob(pw); case "monitor-battery": return monitorBattery(pw); + case "get-aconfig-flag-state": + return getAconfigFlagState(pw); case "get-battery-seq": return getBatterySeq(pw); case "get-battery-charging": @@ -336,6 +338,28 @@ public final class JobSchedulerShellCommand extends BasicShellCommandHandler { return 0; } + private int getAconfigFlagState(PrintWriter pw) throws Exception { + checkPermission("get aconfig flag state"); + + final String flagName = getNextArgRequired(); + + switch (flagName) { + case android.app.job.Flags.FLAG_JOB_DEBUG_INFO_APIS: + pw.println(android.app.job.Flags.jobDebugInfoApis()); + break; + case android.app.job.Flags.FLAG_ENFORCE_MINIMUM_TIME_WINDOWS: + pw.println(android.app.job.Flags.enforceMinimumTimeWindows()); + break; + case com.android.server.job.Flags.FLAG_THROW_ON_UNSUPPORTED_BIAS_USAGE: + pw.println(com.android.server.job.Flags.throwOnUnsupportedBiasUsage()); + break; + default: + pw.println("Unknown flag: " + flagName); + break; + } + return 0; + } + private int getBatterySeq(PrintWriter pw) { int seq = mInternal.getBatterySeq(); pw.println(seq); @@ -693,6 +717,9 @@ public final class JobSchedulerShellCommand extends BasicShellCommandHandler { pw.println(" monitor-battery [on|off]"); pw.println(" Control monitoring of all battery changes. Off by default. Turning"); pw.println(" on makes get-battery-seq useful."); + pw.println(" get-aconfig-flag-state FULL_FLAG_NAME"); + pw.println(" Return the state of the specified aconfig flag, if known. The flag name"); + pw.println(" must be fully qualified."); pw.println(" get-battery-seq"); pw.println(" Return the last battery update sequence number that was received."); pw.println(" get-battery-charging"); |