From 2a26b1326b80d3d45c6f8ec1f143eb8fefa89154 Mon Sep 17 00:00:00 2001 From: Jihoon Kang Date: Mon, 24 Jun 2024 07:39:40 +0000 Subject: [PATCH] Modify extractStubsSourceInfoFromDep to respect RELEASE_HIDDEN_API_EXPORTABLE_STUBS flag Currently, extractStubsSourceInfoFromDep always return the "everything" stub artifacts. This change modifies such behavior so that the "exportable" artifacts are set when `RELEASE_HIDDEN_API_EXPORTABLE_STUBS` build flag is set to true. Test: m nothing --no-skip-soong-tests Bug: 348370901 Change-Id: I1cf0ff7a63c8a580c3553a817ca303d6e8734a2a --- java/sdk_library.go | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/java/sdk_library.go b/java/sdk_library.go index c19b07bb6..68046c6b3 100644 --- a/java/sdk_library.go +++ b/java/sdk_library.go @@ -819,22 +819,23 @@ func (paths *scopePaths) extractStubsSourceInfoFromApiStubsProviders(provider Ap } func (paths *scopePaths) extractStubsSourceInfoFromDep(ctx android.ModuleContext, dep android.Module) error { + stubsType := Everything + if ctx.Config().ReleaseHiddenApiExportableStubs() { + stubsType = Exportable + } return paths.treatDepAsApiStubsSrcProvider(dep, func(provider ApiStubsSrcProvider) error { - return paths.extractStubsSourceInfoFromApiStubsProviders(provider, Everything) + return paths.extractStubsSourceInfoFromApiStubsProviders(provider, stubsType) }) } func (paths *scopePaths) extractStubsSourceAndApiInfoFromApiStubsProvider(ctx android.ModuleContext, dep android.Module) error { + stubsType := Everything if ctx.Config().ReleaseHiddenApiExportableStubs() { - return paths.treatDepAsApiStubsProvider(dep, func(provider ApiStubsProvider) error { - extractApiInfoErr := paths.extractApiInfoFromApiStubsProvider(provider, Exportable) - extractStubsSourceInfoErr := paths.extractStubsSourceInfoFromApiStubsProviders(provider, Exportable) - return errors.Join(extractApiInfoErr, extractStubsSourceInfoErr) - }) + stubsType = Exportable } return paths.treatDepAsApiStubsProvider(dep, func(provider ApiStubsProvider) error { - extractApiInfoErr := paths.extractApiInfoFromApiStubsProvider(provider, Everything) - extractStubsSourceInfoErr := paths.extractStubsSourceInfoFromApiStubsProviders(provider, Everything) + extractApiInfoErr := paths.extractApiInfoFromApiStubsProvider(provider, stubsType) + extractStubsSourceInfoErr := paths.extractStubsSourceInfoFromApiStubsProviders(provider, stubsType) return errors.Join(extractApiInfoErr, extractStubsSourceInfoErr) }) }