diff options
Diffstat (limited to 'java')
| -rw-r--r-- | java/dexpreopt_bootjars.go | 4 | ||||
| -rw-r--r-- | java/java.go | 11 | 
2 files changed, 13 insertions, 2 deletions
diff --git a/java/dexpreopt_bootjars.go b/java/dexpreopt_bootjars.go index 90457d07d..ed61d4bd3 100644 --- a/java/dexpreopt_bootjars.go +++ b/java/dexpreopt_bootjars.go @@ -619,10 +619,10 @@ func updatableBcpPackagesRule(ctx android.SingletonContext, image *bootImageConf  		// Collect `permitted_packages` for updatable boot jars.  		var updatablePackages []string  		ctx.VisitAllModules(func(module android.Module) { -			if j, ok := module.(*Library); ok { +			if j, ok := module.(PermittedPackagesForUpdatableBootJars); ok {  				name := ctx.ModuleName(module)  				if i := android.IndexList(name, updatableModules); i != -1 { -					pp := j.properties.Permitted_packages +					pp := j.PermittedPackagesForUpdatableBootJars()  					if len(pp) > 0 {  						updatablePackages = append(updatablePackages, pp...)  					} else { diff --git a/java/java.go b/java/java.go index 162141d83..76bfa86d6 100644 --- a/java/java.go +++ b/java/java.go @@ -1840,6 +1840,17 @@ type Library struct {  	InstallMixin func(ctx android.ModuleContext, installPath android.Path) (extraInstallDeps android.Paths)  } +// Provides access to the list of permitted packages from updatable boot jars. +type PermittedPackagesForUpdatableBootJars interface { +	PermittedPackagesForUpdatableBootJars() []string +} + +var _ PermittedPackagesForUpdatableBootJars = (*Library)(nil) + +func (j *Library) PermittedPackagesForUpdatableBootJars() []string { +	return j.properties.Permitted_packages +} +  func shouldUncompressDex(ctx android.ModuleContext, dexpreopter *dexpreopter) bool {  	// Store uncompressed (and aligned) any dex files from jars in APEXes.  	if am, ok := ctx.Module().(android.ApexModule); ok && !am.IsForPlatform() {  |