ART services: optimize package - Implement PrimaryDexOptimizer.

This CL contains the basic implementation of app compilation.

Bug: 229268202
Test: atest ArtServiceTests
Ignore-AOSP-First: ART Services.
Change-Id: Ib5940b16c8f6b7f650584d2b770e7fbd40cb75ca
diff --git a/libartservice/service/java/com/android/server/art/DexOptHelper.java b/libartservice/service/java/com/android/server/art/DexOptHelper.java
index a5cee0b..64060ca 100644
--- a/libartservice/service/java/com/android/server/art/DexOptHelper.java
+++ b/libartservice/service/java/com/android/server/art/DexOptHelper.java
@@ -24,6 +24,7 @@
 import android.content.Context;
 import android.os.Binder;
 import android.os.PowerManager;
+import android.os.RemoteException;
 import android.os.WorkSource;
 
 import com.android.internal.annotations.VisibleForTesting;
@@ -71,7 +72,7 @@
     @NonNull
     public OptimizeResult dexopt(@NonNull PackageDataSnapshot snapshot,
             @NonNull PackageState pkgState, @NonNull AndroidPackageApi pkg,
-            @NonNull OptimizeOptions options) {
+            @NonNull OptimizeOptions options) throws RemoteException {
         List<DexFileOptimizeResult> results = new ArrayList<>();
         Supplier<OptimizeResult> createResult = ()
                 -> new OptimizeResult(pkgState.getPackageName(), options.getCompilerFilter(),