Move package parsing to services.jar

This facilitates exposing the Parsed_ classes as
@SystemApi(client = SYSTEM_SERVER) while keeping everything inside
services.jar rather than having it split across both jars.

This reverts getPackageArchiveInfo to use legacy PackageParser, since
framework.jar can no longer access the moved classes.

Bug: 214038417

Test: presubmit, no logic changes

Change-Id: I152d70fb4f643d32efb012cfb20b0fbc5f88f2d8
diff --git a/apct-tests/perftests/packagemanager/Android.bp b/apct-tests/perftests/packagemanager/Android.bp
index fc70219..81cec91 100644
--- a/apct-tests/perftests/packagemanager/Android.bp
+++ b/apct-tests/perftests/packagemanager/Android.bp
@@ -10,7 +10,10 @@
 android_test {
     name: "PackageManagerPerfTests",
 
-    srcs: ["src/**/*.java"],
+    srcs: [
+        "src/**/*.java",
+        "src/**/*.kt",
+    ],
 
     static_libs: [
         "platform-compat-test-rules",
@@ -21,6 +24,7 @@
         "apct-perftests-utils",
         "collector-device-lib-platform",
         "cts-install-lib-java",
+        "services.core",
     ],
 
     libs: ["android.test.base"],
diff --git a/apct-tests/perftests/core/src/android/os/PackageParsingPerfTest.kt b/apct-tests/perftests/packagemanager/src/android/os/PackageParsingPerfTest.kt
similarity index 92%
rename from apct-tests/perftests/core/src/android/os/PackageParsingPerfTest.kt
rename to apct-tests/perftests/packagemanager/src/android/os/PackageParsingPerfTest.kt
index f9ddf9a..e873514 100644
--- a/apct-tests/perftests/core/src/android/os/PackageParsingPerfTest.kt
+++ b/apct-tests/perftests/packagemanager/src/android/os/PackageParsingPerfTest.kt
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2020 The Android Open Source Project
+ * Copyright (C) 2022 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -19,9 +19,6 @@
 import android.content.pm.PackageParser
 import android.content.pm.PackageParserCacheHelper.ReadHelper
 import android.content.pm.PackageParserCacheHelper.WriteHelper
-import android.content.pm.parsing.ParsingPackageImpl
-import android.content.pm.parsing.ParsingPackageRead
-import android.content.pm.parsing.ParsingPackageUtils
 import android.content.pm.parsing.result.ParseInput
 import android.content.pm.parsing.result.ParseTypeImpl
 import android.content.res.TypedArray
@@ -29,6 +26,8 @@
 import android.perftests.utils.PerfStatusReporter
 import androidx.test.filters.LargeTest
 import com.android.internal.util.ConcurrentUtils
+import com.android.server.pm.pkg.parsing.ParsingPackageImpl
+import com.android.server.pm.pkg.parsing.ParsingPackageUtils
 import libcore.io.IoUtils
 import org.junit.Rule
 import org.junit.Test
@@ -42,7 +41,7 @@
 
 @LargeTest
 @RunWith(Parameterized::class)
-class PackageParsingPerfTest {
+public class PackageParsingPerfTest {
 
     companion object {
         private const val PARALLEL_QUEUE_CAPACITY = 10
@@ -196,8 +195,12 @@
             // For testing, just disable enforcement to avoid hooking up to compat framework
             ParseTypeImpl(ParseInput.Callback { _, _, _ -> false })
         }
-        val parser = ParsingPackageUtils(false, null, null, emptyList(),
-            object : ParsingPackageUtils.Callback {
+        val parser = ParsingPackageUtils(false,
+            null,
+            null,
+            emptyList(),
+            object :
+                ParsingPackageUtils.Callback {
                 override fun hasFeature(feature: String) = true
 
                 override fun startParsingPackage(
@@ -206,7 +209,12 @@
                     path: String,
                     manifestArray: TypedArray,
                     isCoreApp: Boolean
-                ) = ParsingPackageImpl(packageName, baseApkPath, path, manifestArray)
+                ) = ParsingPackageImpl(
+                    packageName,
+                    baseApkPath,
+                    path,
+                    manifestArray
+                )
             })
 
         override fun parseImpl(file: File) =
@@ -268,6 +276,7 @@
      * Re-implementation of the server side PackageCacher, as it's inaccessible here.
      */
     class PackageCacher2(cacheDir: File) : PackageCacher<ParsingPackageImpl>(cacheDir) {
-        override fun fromParcel(parcel: Parcel) = ParsingPackageImpl(parcel)
+        override fun fromParcel(parcel: Parcel) =
+            ParsingPackageImpl(parcel)
     }
 }