summaryrefslogtreecommitdiff
path: root/android/sdk.go
diff options
context:
space:
mode:
author Paul Duffin <paulduffin@google.com> 2021-05-10 23:58:40 +0100
committer Paul Duffin <paulduffin@google.com> 2021-05-11 00:59:56 +0100
commit0d4ed0ac56b475cf0b820ecdc8431fdef2367adb (patch)
tree9d6911277e98449ea1c0fef5f72f9da810b8a332 /android/sdk.go
parent83ad956ec4e15814a218082ec27751d55ee96693 (diff)
Allow sdk snapshot to contain source module type
Bug: 181569894 Test: m nothing Change-Id: I30513dd22e2719099a1a1ef63cacc98336d02e9f
Diffstat (limited to 'android/sdk.go')
-rw-r--r--android/sdk.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/android/sdk.go b/android/sdk.go
index 0adfd89c3..2e057d9b7 100644
--- a/android/sdk.go
+++ b/android/sdk.go
@@ -405,6 +405,10 @@ type SdkMemberType interface {
// the module is not allowed in whichever sdk property it was added.
IsInstance(module Module) bool
+ // UsesSourceModuleTypeInSnapshot returns true when the AddPrebuiltModule() method returns a
+ // source module type.
+ UsesSourceModuleTypeInSnapshot() bool
+
// Add a prebuilt module that the sdk will populate.
//
// The sdk module code generates the snapshot as follows:
@@ -451,6 +455,11 @@ type SdkMemberTypeBase struct {
PropertyName string
SupportsSdk bool
HostOsDependent bool
+
+ // When set to true UseSourceModuleTypeInSnapshot indicates that the member type creates a source
+ // module type in its SdkMemberType.AddPrebuiltModule() method. That prevents the sdk snapshot
+ // code from automatically adding a prefer: true flag.
+ UseSourceModuleTypeInSnapshot bool
}
func (b *SdkMemberTypeBase) SdkPropertyName() string {
@@ -465,6 +474,10 @@ func (b *SdkMemberTypeBase) IsHostOsDependent() bool {
return b.HostOsDependent
}
+func (b *SdkMemberTypeBase) UsesSourceModuleTypeInSnapshot() bool {
+ return b.UseSourceModuleTypeInSnapshot
+}
+
// Encapsulates the information about registered SdkMemberTypes.
type SdkMemberTypesRegistry struct {
// The list of types sorted by property name.