diff options
| author | mosimchah <mosimchah@gmail.com> | 2025-12-02 09:26:21 -0500 |
|---|---|---|
| committer | mosimchah <mosimchah@gmail.com> | 2025-12-02 09:26:21 -0500 |
| commit | 278dd9b39c5a3de6320e17d3dd1d10bf447bcc49 (patch) | |
| tree | 333c700c958401ad1ef3446d93eee54dac639cfa /tools/aconfig/aconfig_device_paths/src/DeviceProtosTestUtilTemplate.java | |
| parent | 9b9f43f3305e3304678676813d1fd5945a5f40bf (diff) | |
| parent | 00fcf469ba572bbce3f7c81fb346cccdbfa04219 (diff) | |
Merge branch 'lineage-23.1' of https://github.com/LineageOS/android_build into HEADw16.1
* 'lineage-23.1' of https://github.com/LineageOS/android_build: (415 commits)
Exclude perf-setup-sh from userdebug builds
Reapply "Drop legacy vboot support."
Revert "build: Enable super image build rules depending on single super block device"
Version bump to BP3A.250905.014 [core/build_id.mk]
Version bump to BP3A.250905.013 [core/build_id.mk]
Version bump to BP3A.250905.012 [core/build_id.mk]
Version bump to BP3A.250905.011 [core/build_id.mk]
Version bump to BP3A.250905.007.W1 [core/build_id.mk]
Version bump to BP3A.250905.005.X5 [core/build_id.mk]
Add apexd.mainline_patch_level_2 to PRODUCT_PACKAGES
Version bump to BP3A.250905.009 [core/build_id.mk]
Version bump to BP3A.250905.008 [core/build_id.mk]
Version bump to BP3A.250905.005.X4 [core/build_id.mk]
Version bump to BP3A.250905.005.Y1 [core/build_id.mk]
Version bump to BP3A.250905.007 [core/build_id.mk]
Version bump to BP3A.250905.005.X3 [core/build_id.mk]
Version bump to BP3A.250905.005.X2 [core/build_id.mk]
Version bump to BP3A.250905.005.X1 [core/build_id.mk]
Version bump to BP3A.250905.006 [core/build_id.mk]
Version bump to BP3A.250905.005 [core/build_id.mk]
...
Change-Id: I84161b0f013eb40002a433053b9383240274e9ea
Diffstat (limited to 'tools/aconfig/aconfig_device_paths/src/DeviceProtosTestUtilTemplate.java')
| -rw-r--r-- | tools/aconfig/aconfig_device_paths/src/DeviceProtosTestUtilTemplate.java | 40 |
1 files changed, 38 insertions, 2 deletions
diff --git a/tools/aconfig/aconfig_device_paths/src/DeviceProtosTestUtilTemplate.java b/tools/aconfig/aconfig_device_paths/src/DeviceProtosTestUtilTemplate.java index 45d67663ef..e34593568a 100644 --- a/tools/aconfig/aconfig_device_paths/src/DeviceProtosTestUtilTemplate.java +++ b/tools/aconfig/aconfig_device_paths/src/DeviceProtosTestUtilTemplate.java @@ -25,12 +25,44 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -/** @hide */ +/** + * Utility class to load protobuf storage files. + * + * This class _does_ support Ravenwood. + * + * In order to avoid adding extra dependencies, this class doesn't use Ravenwood annotations + * or RavenwoodHelper.java. Instead, we just hardcode relevant logic. + * + * @hide + */ public class DeviceProtosTestUtil { - public static final String[] PATHS = { + private static final String[] PATHS_DEVICE = { TEMPLATE }; + /** Path to ravenwood runtime, or null on non-ravenwood environment. */ + private static final String RAVENWOOD_RUNTIME_PATH + = System.getProperty("android.ravenwood.runtime_path"); + + /** True if on ravenwood */ + private static final boolean ON_RAVENWOOD = RAVENWOOD_RUNTIME_PATH != null; + + private static String[] getPaths() { + if (!ON_RAVENWOOD) { + return PATHS_DEVICE; + } + return new String[] { + RAVENWOOD_RUNTIME_PATH + "/aconfig/metadata/aconfig/etc/all_aconfig_declarations.pb" + }; + } + + /** + * Protobuf storage files. On the device side, this array contains multiple files, one + * from each partition. On Ravenwood, this contains a single protobuf file containing all the + * flags. + */ + public static final String[] PATHS = getPaths(); + private static final String APEX_DIR = "/apex/"; private static final String APEX_ACONFIG_PATH_SUFFIX = "/etc/aconfig_flags.pb"; private static final String SYSTEM_APEX_DIR = "/system/apex"; @@ -67,6 +99,10 @@ public class DeviceProtosTestUtil { public static List<String> parsedFlagsProtoPaths() { ArrayList<String> paths = new ArrayList(Arrays.asList(PATHS)); + if (ON_RAVENWOOD) { + return paths; // No apexes on Ravenwood. + } + File apexDirectory = new File(SYSTEM_APEX_DIR); if (!apexDirectory.isDirectory()) { return paths; |
