Add java_api_library properties to java_defaults
Context
- Some Java API surfaces have subset relationships (i.e. public API
surface is a subset of system API surface). Thus, simply listing
all API files that contributes to hierarchical API surfaces when
defining java_api_library modules can lead to repetition of code in
Android.bp files.
- Utilizing java_defaults can resolve this problem by
grouping java_api_contribution modules by API surfaces, and reduce
code repetition and enhance readability.
Implementation
- Modify java_api_library module to utilize java_defaults modules.
Test: m
Change-Id: I6adead208ca36c21de72ee39c4f532b84af8a153
diff --git a/java/java.go b/java/java.go
index 3b0ad8d..6bada79 100644
--- a/java/java.go
+++ b/java/java.go
@@ -1623,8 +1623,8 @@
func ApiLibraryFactory() android.Module {
module := &ApiLibrary{}
android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibCommon)
- android.InitDefaultableModule(module)
module.AddProperties(&module.properties)
+ android.InitDefaultableModule(module)
return module
}
@@ -2402,6 +2402,7 @@
&RuntimeResourceOverlayProperties{},
&LintProperties{},
&appTestHelperAppProperties{},
+ &JavaApiLibraryProperties{},
)
android.InitDefaultsModule(module)