From e946b327f4aa2921c442f1b15aeb760eeabec5ce Mon Sep 17 00:00:00 2001 From: Paul Duffin Date: Sun, 25 Apr 2021 23:04:00 +0100 Subject: [PATCH] Rename BootImageInfo to BootclasspathFragmentApexContentInfo Currently, it only contains ART boot image related information, i.e. .art, .oat and .vdex files. However, follow up changes will extend that to include other information from bootclasspath_fragment. Bug: 177892522 Test: m nothing Change-Id: I2b226131c0eccff0c739a18f265f90caa10a91d9 --- apex/apex.go | 4 ++-- apex/bootclasspath_fragment_test.go | 6 +++--- java/bootclasspath_fragment.go | 16 +++++++++------- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/apex/apex.go b/apex/apex.go index 762912ecf..60a594789 100644 --- a/apex/apex.go +++ b/apex/apex.go @@ -1699,8 +1699,8 @@ func (a *apexBundle) GenerateAndroidBuildActions(ctx android.ModuleContext) { ctx.PropertyErrorf("bootclasspath_fragments", "%q is not a boot_image module", depName) return false } - bootImageInfo := ctx.OtherModuleProvider(child, java.BootImageInfoProvider).(java.BootImageInfo) - for arch, files := range bootImageInfo.AndroidBootImageFilesByArchType() { + bootclasspathFragmentInfo := ctx.OtherModuleProvider(child, java.BootclasspathFragmentApexContentInfoProvider).(java.BootclasspathFragmentApexContentInfo) + for arch, files := range bootclasspathFragmentInfo.AndroidBootImageFilesByArchType() { dirInApex := filepath.Join("javalib", arch.String()) for _, f := range files { androidMkModuleName := "javalib_" + arch.String() + "_" + filepath.Base(f.String()) diff --git a/apex/bootclasspath_fragment_test.go b/apex/bootclasspath_fragment_test.go index 87f013231..feda482a1 100644 --- a/apex/bootclasspath_fragment_test.go +++ b/apex/bootclasspath_fragment_test.go @@ -143,13 +143,13 @@ func checkBootclasspathFragment(t *testing.T, result *android.TestResult, module bootclasspathFragment := result.ModuleForTests(moduleName, "android_common").Module().(*java.BootclasspathFragmentModule) - bootImageInfo := result.ModuleProvider(bootclasspathFragment, java.BootImageInfoProvider).(java.BootImageInfo) - modules := bootImageInfo.Modules() + bootclasspathFragmentInfo := result.ModuleProvider(bootclasspathFragment, java.BootclasspathFragmentApexContentInfoProvider).(java.BootclasspathFragmentApexContentInfo) + modules := bootclasspathFragmentInfo.Modules() android.AssertStringEquals(t, "invalid modules for "+moduleName, expectedConfiguredModules, modules.String()) // Get a list of all the paths in the boot image sorted by arch type. allPaths := []string{} - bootImageFilesByArchType := bootImageInfo.AndroidBootImageFilesByArchType() + bootImageFilesByArchType := bootclasspathFragmentInfo.AndroidBootImageFilesByArchType() for _, archType := range android.ArchTypeList() { if paths, ok := bootImageFilesByArchType[archType]; ok { for _, path := range paths { diff --git a/java/bootclasspath_fragment.go b/java/bootclasspath_fragment.go index 619d47fcf..00d465992 100644 --- a/java/bootclasspath_fragment.go +++ b/java/bootclasspath_fragment.go @@ -165,24 +165,26 @@ func bootclasspathFragmentInitContentsFromImage(ctx android.EarlyModuleContext, } } -var BootImageInfoProvider = blueprint.NewProvider(BootImageInfo{}) +var BootclasspathFragmentApexContentInfoProvider = blueprint.NewProvider(BootclasspathFragmentApexContentInfo{}) -type BootImageInfo struct { +// BootclasspathFragmentApexContentInfo contains the bootclasspath_fragments contributions to the +// apex contents. +type BootclasspathFragmentApexContentInfo struct { // The image config, internal to this module (and the dex_bootjars singleton). // - // Will be nil if the BootImageInfo has not been provided for a specific module. That can occur + // Will be nil if the BootclasspathFragmentApexContentInfo has not been provided for a specific module. That can occur // when SkipDexpreoptBootJars(ctx) returns true. imageConfig *bootImageConfig } -func (i BootImageInfo) Modules() android.ConfiguredJarList { +func (i BootclasspathFragmentApexContentInfo) Modules() android.ConfiguredJarList { return i.imageConfig.modules } // Get a map from ArchType to the associated boot image's contents for Android. // // Extension boot images only return their own files, not the files of the boot images they extend. -func (i BootImageInfo) AndroidBootImageFilesByArchType() map[android.ArchType]android.OutputPaths { +func (i BootclasspathFragmentApexContentInfo) AndroidBootImageFilesByArchType() map[android.ArchType]android.OutputPaths { files := map[android.ArchType]android.OutputPaths{} if i.imageConfig != nil { for _, variant := range i.imageConfig.variants { @@ -264,10 +266,10 @@ func (b *BootclasspathFragmentModule) GenerateAndroidBuildActions(ctx android.Mo } // Construct the boot image info from the config. - info := BootImageInfo{imageConfig: imageConfig} + info := BootclasspathFragmentApexContentInfo{imageConfig: imageConfig} // Make it available for other modules. - ctx.SetProvider(BootImageInfoProvider, info) + ctx.SetProvider(BootclasspathFragmentApexContentInfoProvider, info) } func (b *BootclasspathFragmentModule) getImageConfig(ctx android.EarlyModuleContext) *bootImageConfig {