Rename "extra" to "extended".

"Extra" has specific meanings in Android.

Bug: 301153387
Test: m
Change-Id: I8b5e606a69e6b81c3aa729c6338c4612cb7c5f3d
Merged-In: I8b5e606a69e6b81c3aa729c6338c4612cb7c5f3d
diff --git a/libartservice/service/api/system-server-current.txt b/libartservice/service/api/system-server-current.txt
index f885980..45f0878 100644
--- a/libartservice/service/api/system-server-current.txt
+++ b/libartservice/service/api/system-server-current.txt
@@ -142,9 +142,9 @@
     field public static final int DEXOPT_FAILED = 30; // 0x1e
     field public static final int DEXOPT_PERFORMED = 20; // 0x14
     field public static final int DEXOPT_SKIPPED = 10; // 0xa
-    field public static final int EXTRA_BAD_EXTERNAL_PROFILE = 4; // 0x4
-    field public static final int EXTRA_SKIPPED_NO_DEX_CODE = 2; // 0x2
-    field public static final int EXTRA_SKIPPED_STORAGE_LOW = 1; // 0x1
+    field public static final int EXTENDED_BAD_EXTERNAL_PROFILE = 4; // 0x4
+    field public static final int EXTENDED_SKIPPED_NO_DEX_CODE = 2; // 0x2
+    field public static final int EXTENDED_SKIPPED_STORAGE_LOW = 1; // 0x1
   }
 
   public abstract static class DexoptResult.DexContainerFileDexoptResult {
@@ -153,8 +153,8 @@
     method public abstract long getDex2oatCpuTimeMillis();
     method public abstract long getDex2oatWallTimeMillis();
     method @NonNull public abstract String getDexContainerFile();
+    method public abstract int getExtendedStatusFlags();
     method @NonNull public abstract java.util.List<java.lang.String> getExternalProfileErrors();
-    method public abstract int getExtraStatuses();
     method public abstract long getSizeBeforeBytes();
     method public abstract long getSizeBytes();
     method public abstract int getStatus();
diff --git a/libartservice/service/java/com/android/server/art/BackgroundDexoptJobStatsReporter.java b/libartservice/service/java/com/android/server/art/BackgroundDexoptJobStatsReporter.java
index c87e9f7..c6cc73a 100644
--- a/libartservice/service/java/com/android/server/art/BackgroundDexoptJobStatsReporter.java
+++ b/libartservice/service/java/com/android/server/art/BackgroundDexoptJobStatsReporter.java
@@ -51,8 +51,8 @@
                 .filter(packageResult
                         -> packageResult.getDexContainerFileDexoptResults().stream().anyMatch(
                                 fileResult
-                                -> (fileResult.getExtraStatuses()
-                                           & DexoptResult.EXTRA_SKIPPED_NO_DEX_CODE)
+                                -> (fileResult.getExtendedStatusFlags()
+                                           & DexoptResult.EXTENDED_SKIPPED_NO_DEX_CODE)
                                         == 0))
                 .collect(Collectors.toList());
     }
@@ -75,8 +75,8 @@
                         .flatMap(packageResult
                                 -> packageResult.getDexContainerFileDexoptResults().stream())
                         .anyMatch(fileResult
-                                -> (fileResult.getExtraStatuses()
-                                           & DexoptResult.EXTRA_SKIPPED_STORAGE_LOW)
+                                -> (fileResult.getExtendedStatusFlags()
+                                           & DexoptResult.EXTENDED_SKIPPED_STORAGE_LOW)
                                         != 0);
         if (isSkippedDueToStorageLow) {
             return ArtStatsLog.BACKGROUND_DEXOPT_JOB_ENDED__STATUS__STATUS_ABORT_NO_SPACE_LEFT;
diff --git a/libartservice/service/java/com/android/server/art/Dexopter.java b/libartservice/service/java/com/android/server/art/Dexopter.java
index dbfe43d..d6ea03c 100644
--- a/libartservice/service/java/com/android/server/art/Dexopter.java
+++ b/libartservice/service/java/com/android/server/art/Dexopter.java
@@ -169,7 +169,7 @@
                     long cpuTimeMs = 0;
                     long sizeBytes = 0;
                     long sizeBeforeBytes = 0;
-                    @DexoptResult.DexoptResultExtraStatus int extraStatus = 0;
+                    @DexoptResult.DexoptResultExtendedStatusFlags int extendedStatusFlags = 0;
                     try {
                         var target = DexoptTarget.<DexInfoType>builder()
                                              .setDexInfo(dexInfo)
@@ -187,7 +187,7 @@
                                 getDexoptNeeded(target, options);
 
                         if (!getDexoptNeededResult.hasDexCode) {
-                            extraStatus |= DexoptResult.EXTRA_SKIPPED_NO_DEX_CODE;
+                            extendedStatusFlags |= DexoptResult.EXTENDED_SKIPPED_NO_DEX_CODE;
                         }
 
                         if (!getDexoptNeededResult.isDexoptNeeded) {
@@ -204,7 +204,7 @@
                                     && mInjector.getStorageManager().getAllocatableBytes(
                                                mPkg.getStorageUuid())
                                             <= 0) {
-                                extraStatus |= DexoptResult.EXTRA_SKIPPED_STORAGE_LOW;
+                                extendedStatusFlags |= DexoptResult.EXTENDED_SKIPPED_STORAGE_LOW;
                                 continue;
                             }
                         } catch (IOException e) {
@@ -246,11 +246,11 @@
                         status = DexoptResult.DEXOPT_FAILED;
                     } finally {
                         if (!externalProfileErrors.isEmpty()) {
-                            extraStatus |= DexoptResult.EXTRA_BAD_EXTERNAL_PROFILE;
+                            extendedStatusFlags |= DexoptResult.EXTENDED_BAD_EXTERNAL_PROFILE;
                         }
                         var result = DexContainerFileDexoptResult.create(dexInfo.dexPath(),
                                 abi.isPrimaryAbi(), abi.name(), compilerFilter, status, wallTimeMs,
-                                cpuTimeMs, sizeBytes, sizeBeforeBytes, extraStatus,
+                                cpuTimeMs, sizeBytes, sizeBeforeBytes, extendedStatusFlags,
                                 externalProfileErrors);
                         Log.i(TAG,
                                 String.format("Dexopt result: [packageName = %s] %s",
diff --git a/libartservice/service/java/com/android/server/art/model/DexoptResult.java b/libartservice/service/java/com/android/server/art/model/DexoptResult.java
index 45704e8..aa5127b 100644
--- a/libartservice/service/java/com/android/server/art/model/DexoptResult.java
+++ b/libartservice/service/java/com/android/server/art/model/DexoptResult.java
@@ -62,9 +62,9 @@
     @Retention(RetentionPolicy.SOURCE)
     public @interface DexoptResultStatus {}
 
-    // Possible values of {@link #DexoptResultExtraStatus}.
+    // Possible values of {@link #DexoptResultExtendedStatusFlags}.
     /** Dexopt is skipped because the remaining storage space is low. */
-    public static final int EXTRA_SKIPPED_STORAGE_LOW = 1 << 0;
+    public static final int EXTENDED_SKIPPED_STORAGE_LOW = 1 << 0;
     /**
      * Dexopt is skipped because the dex container file has no dex code while the manifest declares
      * that it does.
@@ -73,7 +73,7 @@
      * Instead, those files are not listed in {@link
      * PackageDexoptResult#getDexContainerFileDexoptResults} in the first place.
      */
-    public static final int EXTRA_SKIPPED_NO_DEX_CODE = 1 << 1;
+    public static final int EXTENDED_SKIPPED_NO_DEX_CODE = 1 << 1;
     /**
      * Dexopt encountered errors when processing the profiles that are external to the device,
      * including the profile in the DM file and the profile embedded in the dex container file.
@@ -83,18 +83,18 @@
      * This is not a critical error. Dexopt may still have succeeded after ignoring the bad external
      * profiles.
      */
-    public static final int EXTRA_BAD_EXTERNAL_PROFILE = 1 << 2;
+    public static final int EXTENDED_BAD_EXTERNAL_PROFILE = 1 << 2;
 
     /** @hide */
     // clang-format off
-    @IntDef(flag = true, prefix = {"EXTRA_"}, value = {
-        EXTRA_SKIPPED_STORAGE_LOW,
-        EXTRA_SKIPPED_NO_DEX_CODE,
-        EXTRA_BAD_EXTERNAL_PROFILE,
+    @IntDef(flag = true, prefix = {"EXTENDED_"}, value = {
+        EXTENDED_SKIPPED_STORAGE_LOW,
+        EXTENDED_SKIPPED_NO_DEX_CODE,
+        EXTENDED_BAD_EXTERNAL_PROFILE,
     })
     // clang-format on
     @Retention(RetentionPolicy.SOURCE)
-    public @interface DexoptResultExtraStatus {}
+    public @interface DexoptResultExtendedStatusFlags {}
 
     /** @hide */
     protected DexoptResult() {}
@@ -164,16 +164,17 @@
 
     /** @hide */
     @NonNull
-    public static String dexoptResultExtraStatusToString(@DexoptResultExtraStatus int extraStatus) {
+    public static String dexoptResultExtendedStatusFlagsToString(
+            @DexoptResultExtendedStatusFlags int flags) {
         var strs = new ArrayList<String>();
-        if ((extraStatus & DexoptResult.EXTRA_SKIPPED_STORAGE_LOW) != 0) {
-            strs.add("EXTRA_SKIPPED_STORAGE_LOW");
+        if ((flags & DexoptResult.EXTENDED_SKIPPED_STORAGE_LOW) != 0) {
+            strs.add("EXTENDED_SKIPPED_STORAGE_LOW");
         }
-        if ((extraStatus & DexoptResult.EXTRA_SKIPPED_NO_DEX_CODE) != 0) {
-            strs.add("EXTRA_SKIPPED_NO_DEX_CODE");
+        if ((flags & DexoptResult.EXTENDED_SKIPPED_NO_DEX_CODE) != 0) {
+            strs.add("EXTENDED_SKIPPED_NO_DEX_CODE");
         }
-        if ((extraStatus & DexoptResult.EXTRA_BAD_EXTERNAL_PROFILE) != 0) {
-            strs.add("EXTRA_BAD_EXTERNAL_PROFILE");
+        if ((flags & DexoptResult.EXTENDED_BAD_EXTERNAL_PROFILE) != 0) {
+            strs.add("EXTENDED_BAD_EXTERNAL_PROFILE");
         }
         return String.join(", ", strs);
     }
@@ -246,11 +247,11 @@
                 boolean isPrimaryAbi, @NonNull String abi, @NonNull String compilerFilter,
                 @DexoptResultStatus int status, long dex2oatWallTimeMillis,
                 long dex2oatCpuTimeMillis, long sizeBytes, long sizeBeforeBytes,
-                @DexoptResultExtraStatus int extraStatus,
+                @DexoptResultExtendedStatusFlags int extendedStatusFlags,
                 @NonNull List<String> externalProfileErrors) {
             return new AutoValue_DexoptResult_DexContainerFileDexoptResult(dexContainerFile,
                     isPrimaryAbi, abi, compilerFilter, status, dex2oatWallTimeMillis,
-                    dex2oatCpuTimeMillis, sizeBytes, sizeBeforeBytes, extraStatus,
+                    dex2oatCpuTimeMillis, sizeBytes, sizeBeforeBytes, extendedStatusFlags,
                     Collections.unmodifiableList(externalProfileErrors));
         }
 
@@ -261,7 +262,7 @@
                 @DexoptResultStatus int status) {
             return create(dexContainerFile, isPrimaryAbi, abi, compilerFilter, status,
                     0 /* dex2oatWallTimeMillis */, 0 /* dex2oatCpuTimeMillis */, 0 /* sizeBytes */,
-                    0 /* sizeBeforeBytes */, 0 /* extraStatus */,
+                    0 /* sizeBeforeBytes */, 0 /* extendedStatusFlags */,
                     List.of() /* externalProfileErrors */);
         }
 
@@ -319,12 +320,12 @@
         /**
          * A bitfield of the extended status flags.
          *
-         * Flags that starts with `EXTRA_SKIPPED_` are a subset of the reasons why dexopt is
-         * skipped. Note that they don't cover all possible reasons. At most one `EXTRA_SKIPPED_`
-         * flag will be set, even if the situation meets multiple `EXTRA_SKIPPED_` flags. The order
-         * of precedence of those flags is undefined.
+         * Flags that starts with `EXTENDED_SKIPPED_` are a subset of the reasons why dexopt is
+         * skipped. Note that they don't cover all possible reasons. At most one `EXTENDED_SKIPPED_`
+         * flag will be set, even if the situation meets multiple `EXTENDED_SKIPPED_` flags. The
+         * order of precedence of those flags is undefined.
          */
-        public abstract @DexoptResultExtraStatus int getExtraStatuses();
+        public abstract @DexoptResultExtendedStatusFlags int getExtendedStatusFlags();
 
         /**
          * Details of errors occurred when processing external profiles, one error per profile file
@@ -334,7 +335,7 @@
          * will be repeated for each ABI in the {@link DexContainerFileDexoptResult}s of the same
          * dex container file.
          *
-         * @see #EXTRA_BAD_EXTERNAL_PROFILE.
+         * @see #EXTENDED_BAD_EXTERNAL_PROFILE.
          */
         public abstract @NonNull List<String> getExternalProfileErrors();
 
@@ -351,12 +352,12 @@
                             + "dex2oatCpuTimeMillis=%d, "
                             + "sizeBytes=%d, "
                             + "sizeBeforeBytes=%d, "
-                            + "extraStatus=[%s]}",
+                            + "extendedStatusFlags=[%s]}",
                     getDexContainerFile(), isPrimaryAbi(), getAbi(), getActualCompilerFilter(),
                     DexoptResult.dexoptResultStatusToString(getStatus()),
                     getDex2oatWallTimeMillis(), getDex2oatCpuTimeMillis(), getSizeBytes(),
                     getSizeBeforeBytes(),
-                    DexoptResult.dexoptResultExtraStatusToString(getExtraStatuses()));
+                    DexoptResult.dexoptResultExtendedStatusFlagsToString(getExtendedStatusFlags()));
         }
     }
 }
diff --git a/libartservice/service/javatests/com/android/server/art/PrimaryDexopterParameterizedTest.java b/libartservice/service/javatests/com/android/server/art/PrimaryDexopterParameterizedTest.java
index 04f70dd..25543c8 100644
--- a/libartservice/service/javatests/com/android/server/art/PrimaryDexopterParameterizedTest.java
+++ b/libartservice/service/javatests/com/android/server/art/PrimaryDexopterParameterizedTest.java
@@ -287,7 +287,7 @@
                                 mParams.mExpectedCompilerFilter, DexoptResult.DEXOPT_PERFORMED,
                                 100 /* dex2oatWallTimeMillis */, 400 /* dex2oatCpuTimeMillis */,
                                 30000 /* sizeBytes */, 32000 /* sizeBeforeBytes */,
-                                0 /* extraStatus */, List.of() /* externalProfileErrors */),
+                                0 /* extendedStatusFlags */, List.of() /* externalProfileErrors */),
                         DexContainerFileDexoptResult.create("/data/app/foo/base.apk",
                                 false /* isPrimaryAbi */, "armeabi-v7a",
                                 mParams.mExpectedCompilerFilter, DexoptResult.DEXOPT_FAILED),
@@ -298,7 +298,8 @@
                                 false /* isPrimaryAbi */, "armeabi-v7a",
                                 mParams.mExpectedCompilerFilter, DexoptResult.DEXOPT_PERFORMED,
                                 200 /* dex2oatWallTimeMillis */, 200 /* dex2oatCpuTimeMillis */,
-                                10000 /* sizeBytes */, 0 /* sizeBeforeBytes */, 0 /* extraStatus */,
+                                10000 /* sizeBytes */, 0 /* sizeBeforeBytes */,
+                                0 /* extendedStatusFlags */,
                                 List.of() /* externalProfileErrors */));
 
         // Verify that there are no more calls than the ones above.
diff --git a/libartservice/service/javatests/com/android/server/art/PrimaryDexopterTest.java b/libartservice/service/javatests/com/android/server/art/PrimaryDexopterTest.java
index 3fce031..2d4cdc0 100644
--- a/libartservice/service/javatests/com/android/server/art/PrimaryDexopterTest.java
+++ b/libartservice/service/javatests/com/android/server/art/PrimaryDexopterTest.java
@@ -401,11 +401,13 @@
         List<DexContainerFileDexoptResult> results = mPrimaryDexopter.dexopt();
 
         assertThat(results.get(0).getStatus()).isEqualTo(DexoptResult.DEXOPT_PERFORMED);
-        assertThat(results.get(0).getExtraStatuses() & DexoptResult.EXTRA_BAD_EXTERNAL_PROFILE)
+        assertThat(results.get(0).getExtendedStatusFlags()
+                & DexoptResult.EXTENDED_BAD_EXTERNAL_PROFILE)
                 .isNotEqualTo(0);
         assertThat(results.get(0).getExternalProfileErrors()).containsExactly("error_msg");
         assertThat(results.get(1).getStatus()).isEqualTo(DexoptResult.DEXOPT_PERFORMED);
-        assertThat(results.get(1).getExtraStatuses() & DexoptResult.EXTRA_BAD_EXTERNAL_PROFILE)
+        assertThat(results.get(1).getExtendedStatusFlags()
+                & DexoptResult.EXTENDED_BAD_EXTERNAL_PROFILE)
                 .isNotEqualTo(0);
         assertThat(results.get(1).getExternalProfileErrors()).containsExactly("error_msg");
     }
@@ -648,16 +650,20 @@
 
         List<DexContainerFileDexoptResult> results = mPrimaryDexopter.dexopt();
         assertThat(results.get(0).getStatus()).isEqualTo(DexoptResult.DEXOPT_PERFORMED);
-        assertThat(results.get(0).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_STORAGE_LOW)
+        assertThat(
+                results.get(0).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_STORAGE_LOW)
                 .isEqualTo(0);
         assertThat(results.get(1).getStatus()).isEqualTo(DexoptResult.DEXOPT_SKIPPED);
-        assertThat(results.get(1).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_STORAGE_LOW)
+        assertThat(
+                results.get(1).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_STORAGE_LOW)
                 .isNotEqualTo(0);
         assertThat(results.get(2).getStatus()).isEqualTo(DexoptResult.DEXOPT_SKIPPED);
-        assertThat(results.get(2).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_STORAGE_LOW)
+        assertThat(
+                results.get(2).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_STORAGE_LOW)
                 .isNotEqualTo(0);
         assertThat(results.get(3).getStatus()).isEqualTo(DexoptResult.DEXOPT_PERFORMED);
-        assertThat(results.get(3).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_STORAGE_LOW)
+        assertThat(
+                results.get(3).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_STORAGE_LOW)
                 .isEqualTo(0);
 
         verify(mArtd, times(2))
@@ -682,16 +688,20 @@
 
         List<DexContainerFileDexoptResult> results = mPrimaryDexopter.dexopt();
         assertThat(results.get(0).getStatus()).isEqualTo(DexoptResult.DEXOPT_SKIPPED);
-        assertThat(results.get(0).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_NO_DEX_CODE)
+        assertThat(
+                results.get(0).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_NO_DEX_CODE)
                 .isNotEqualTo(0);
         assertThat(results.get(1).getStatus()).isEqualTo(DexoptResult.DEXOPT_SKIPPED);
-        assertThat(results.get(1).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_NO_DEX_CODE)
+        assertThat(
+                results.get(1).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_NO_DEX_CODE)
                 .isNotEqualTo(0);
         assertThat(results.get(2).getStatus()).isEqualTo(DexoptResult.DEXOPT_SKIPPED);
-        assertThat(results.get(2).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_NO_DEX_CODE)
+        assertThat(
+                results.get(2).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_NO_DEX_CODE)
                 .isEqualTo(0);
         assertThat(results.get(3).getStatus()).isEqualTo(DexoptResult.DEXOPT_PERFORMED);
-        assertThat(results.get(3).getExtraStatuses() & DexoptResult.EXTRA_SKIPPED_NO_DEX_CODE)
+        assertThat(
+                results.get(3).getExtendedStatusFlags() & DexoptResult.EXTENDED_SKIPPED_NO_DEX_CODE)
                 .isEqualTo(0);
     }
 
@@ -744,7 +754,7 @@
     private void verifyStatusAllOk(List<DexContainerFileDexoptResult> results) {
         for (DexContainerFileDexoptResult result : results) {
             assertThat(result.getStatus()).isEqualTo(DexoptResult.DEXOPT_PERFORMED);
-            assertThat(result.getExtraStatuses()).isEqualTo(0);
+            assertThat(result.getExtendedStatusFlags()).isEqualTo(0);
             assertThat(result.getExternalProfileErrors()).isEmpty();
         }
     }