From aaedfaf9e1467f0d9545bc091ed02124cad7b920 Mon Sep 17 00:00:00 2001 From: Jiakai Zhang Date: Fri, 13 Jan 2023 18:28:40 +0800 Subject: [PATCH] Remove TODO(b/251903639) from PackageManagerShellCommand. We are now forwarding all dexopt shell commands to ART Service, so PackageManagerShellCommand doesn't need to call into ART Service in the legacy shell command handlers. Bug: 251903639 Bug: 263247832 Test: Presubmit Change-Id: I2e9c9dbf6f5713a2bed98463bf2fd57c77852ba9 --- .../server/pm/PackageManagerShellCommand.java | 92 +++++++++---------- 1 file changed, 41 insertions(+), 51 deletions(-) diff --git a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java index 0685435424e1b..a7a5e3a859c6f 100644 --- a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java +++ b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java @@ -1979,63 +1979,53 @@ class PackageManagerShellCommand extends ShellCommand { return 0; } - private int runBgDexOpt() throws RemoteException { - // TODO(b/251903639): Call into ART Service. - try { - String opt = getNextOption(); + private int runBgDexOpt() throws RemoteException, LegacyDexoptDisabledException { + String opt = getNextOption(); - if (opt == null) { - List packageNames = new ArrayList<>(); - String arg; - while ((arg = getNextArg()) != null) { - packageNames.add(arg); - } - if (!BackgroundDexOptService.getService().runBackgroundDexoptJob( - packageNames.isEmpty() ? null : packageNames)) { - getOutPrintWriter().println("Failure"); - return -1; - } - } else { - String extraArg = getNextArg(); - if (extraArg != null) { - getErrPrintWriter().println("Invalid argument: " + extraArg); - return -1; - } - - switch (opt) { - case "--cancel": - return cancelBgDexOptJob(); - - case "--disable": - BackgroundDexOptService.getService().setDisableJobSchedulerJobs(true); - break; - - case "--enable": - BackgroundDexOptService.getService().setDisableJobSchedulerJobs(false); - break; - - default: - getErrPrintWriter().println("Unknown option: " + opt); - return -1; - } + if (opt == null) { + List packageNames = new ArrayList<>(); + String arg; + while ((arg = getNextArg()) != null) { + packageNames.add(arg); + } + if (!BackgroundDexOptService.getService().runBackgroundDexoptJob( + packageNames.isEmpty() ? null : packageNames)) { + getOutPrintWriter().println("Failure"); + return -1; + } + } else { + String extraArg = getNextArg(); + if (extraArg != null) { + getErrPrintWriter().println("Invalid argument: " + extraArg); + return -1; } - getOutPrintWriter().println("Success"); - return 0; - } catch (LegacyDexoptDisabledException e) { - throw new RuntimeException(e); + switch (opt) { + case "--cancel": + return cancelBgDexOptJob(); + + case "--disable": + BackgroundDexOptService.getService().setDisableJobSchedulerJobs(true); + break; + + case "--enable": + BackgroundDexOptService.getService().setDisableJobSchedulerJobs(false); + break; + + default: + getErrPrintWriter().println("Unknown option: " + opt); + return -1; + } } + + getOutPrintWriter().println("Success"); + return 0; } - private int cancelBgDexOptJob() throws RemoteException { - // TODO(b/251903639): Call into ART Service. - try { - BackgroundDexOptService.getService().cancelBackgroundDexoptJob(); - getOutPrintWriter().println("Success"); - return 0; - } catch (LegacyDexoptDisabledException e) { - throw new RuntimeException(e); - } + private int cancelBgDexOptJob() throws RemoteException, LegacyDexoptDisabledException { + BackgroundDexOptService.getService().cancelBackgroundDexoptJob(); + getOutPrintWriter().println("Success"); + return 0; } private int runDeleteDexOpt() throws RemoteException {