diff options
6 files changed, 33 insertions, 31 deletions
diff --git a/core/java/android/app/appfunctions/AppFunctionRuntimeMetadata.java b/core/java/android/app/appfunctions/AppFunctionRuntimeMetadata.java index f5c5a11f45fb..36daaabad7cb 100644 --- a/core/java/android/app/appfunctions/AppFunctionRuntimeMetadata.java +++ b/core/java/android/app/appfunctions/AppFunctionRuntimeMetadata.java @@ -180,13 +180,8 @@ public class AppFunctionRuntimeMetadata extends GenericDocument { * * @param packageName the name of the package that owns the function. * @param functionId the id of the function. - * @param staticMetadataQualifiedId the qualified static metadata id that this runtime - * metadata refers to. */ - public Builder( - @NonNull String packageName, - @NonNull String functionId, - @NonNull String staticMetadataQualifiedId) { + public Builder(@NonNull String packageName, @NonNull String functionId) { super( APP_FUNCTION_RUNTIME_NAMESPACE, getDocumentIdForAppFunction( @@ -198,7 +193,9 @@ public class AppFunctionRuntimeMetadata extends GenericDocument { // Set qualified id automatically setPropertyString( - PROPERTY_APP_FUNCTION_STATIC_METADATA_QUALIFIED_ID, staticMetadataQualifiedId); + PROPERTY_APP_FUNCTION_STATIC_METADATA_QUALIFIED_ID, + AppFunctionStaticMetadataHelper.getStaticMetadataQualifiedId( + packageName, functionId)); } /** diff --git a/services/appfunctions/java/com/android/server/appfunctions/MetadataSyncAdapter.java b/services/appfunctions/java/com/android/server/appfunctions/MetadataSyncAdapter.java index d140258107dc..e2573590bf5d 100644 --- a/services/appfunctions/java/com/android/server/appfunctions/MetadataSyncAdapter.java +++ b/services/appfunctions/java/com/android/server/appfunctions/MetadataSyncAdapter.java @@ -180,11 +180,7 @@ public class MetadataSyncAdapter { ArraySet<String> addedFunctionIds = addedFunctionsDiffMap.valueAt(i); for (String addedFunctionId : addedFunctionIds) { putDocumentRequestBuilder.addGenericDocuments( - new AppFunctionRuntimeMetadata.Builder( - packageName, - addedFunctionId, - AppFunctionRuntimeMetadata - .PROPERTY_APP_FUNCTION_STATIC_METADATA_QUALIFIED_ID) + new AppFunctionRuntimeMetadata.Builder(packageName, addedFunctionId) .build()); } } @@ -232,12 +228,11 @@ public class MetadataSyncAdapter { runtimeMetadataSchema.getSchemaType(), true, new PackageIdentifier(packageName, packageCert)); + setSchemaRequestBuilder.addRequiredPermissionsForSchemaTypeVisibility( + runtimeMetadataSchema.getSchemaType(), Set.of(EXECUTE_APP_FUNCTIONS)); + setSchemaRequestBuilder.addRequiredPermissionsForSchemaTypeVisibility( + runtimeMetadataSchema.getSchemaType(), Set.of(EXECUTE_APP_FUNCTIONS_TRUSTED)); } - - setSchemaRequestBuilder.addRequiredPermissionsForSchemaTypeVisibility( - RUNTIME_SCHEMA_TYPE, Set.of(EXECUTE_APP_FUNCTIONS)); - setSchemaRequestBuilder.addRequiredPermissionsForSchemaTypeVisibility( - RUNTIME_SCHEMA_TYPE, Set.of(EXECUTE_APP_FUNCTIONS_TRUSTED)); return setSchemaRequestBuilder.build(); } diff --git a/services/tests/appfunctions/src/android/app/appfunctions/AppFunctionRuntimeMetadataTest.kt b/services/tests/appfunctions/src/android/app/appfunctions/AppFunctionRuntimeMetadataTest.kt index 650e520ebb7d..dbbb2fe1bc72 100644 --- a/services/tests/appfunctions/src/android/app/appfunctions/AppFunctionRuntimeMetadataTest.kt +++ b/services/tests/appfunctions/src/android/app/appfunctions/AppFunctionRuntimeMetadataTest.kt @@ -101,4 +101,15 @@ class AppFunctionRuntimeMetadataTest { assertThat(actualPackageName).isEqualTo(expectedPackageName) } + + @Test + fun testBuild() { + val runtimeMetadata = AppFunctionRuntimeMetadata.Builder("com.pkg", "funcId").build() + + assertThat(runtimeMetadata.packageName).isEqualTo("com.pkg") + assertThat(runtimeMetadata.functionId).isEqualTo("funcId") + assertThat(runtimeMetadata.enabled).isNull() + assertThat(runtimeMetadata.appFunctionStaticMetadataQualifiedId) + .isEqualTo("android\$apps-db/app_functions#com.pkg/funcId") + } } diff --git a/services/tests/appfunctions/src/com/android/server/appfunctions/FutureAppSearchSessionTest.kt b/services/tests/appfunctions/src/com/android/server/appfunctions/FutureAppSearchSessionTest.kt index edcbb9e81d87..e761e8d82c92 100644 --- a/services/tests/appfunctions/src/com/android/server/appfunctions/FutureAppSearchSessionTest.kt +++ b/services/tests/appfunctions/src/com/android/server/appfunctions/FutureAppSearchSessionTest.kt @@ -84,7 +84,7 @@ class FutureAppSearchSessionTest { val schema = session.setSchema(setSchemaRequest) assertThat(schema.get()).isNotNull() val appFunctionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID, "").build() + AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID).build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder() .addGenericDocuments(appFunctionRuntimeMetadata) @@ -110,7 +110,7 @@ class FutureAppSearchSessionTest { val schema = session.setSchema(setSchemaRequest) assertThat(schema.get()).isNotNull() val appFunctionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID, "").build() + AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID).build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder() .addGenericDocuments(appFunctionRuntimeMetadata) @@ -144,7 +144,7 @@ class FutureAppSearchSessionTest { val schema = session.setSchema(setSchemaRequest) assertThat(schema.get()).isNotNull() val appFunctionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID, "").build() + AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID).build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder() .addGenericDocuments(appFunctionRuntimeMetadata) @@ -175,7 +175,7 @@ class FutureAppSearchSessionTest { .build() session.setSchema(setSchemaRequest).get() val appFunctionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID, "").build() + AppFunctionRuntimeMetadata.Builder(TEST_PACKAGE_NAME, TEST_FUNCTION_ID).build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder() .addGenericDocuments(appFunctionRuntimeMetadata) diff --git a/services/tests/appfunctions/src/com/android/server/appfunctions/FutureGlobalSearchSessionTest.kt b/services/tests/appfunctions/src/com/android/server/appfunctions/FutureGlobalSearchSessionTest.kt index 38cba6537c95..7fe726346a77 100644 --- a/services/tests/appfunctions/src/com/android/server/appfunctions/FutureGlobalSearchSessionTest.kt +++ b/services/tests/appfunctions/src/com/android/server/appfunctions/FutureGlobalSearchSessionTest.kt @@ -94,8 +94,7 @@ class FutureGlobalSearchSessionTest { val schema = session.setSchema(setSchemaRequest) assertThat(schema.get()).isNotNull() val appFunctionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, TEST_FUNCTION_ID, "") - .build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, TEST_FUNCTION_ID).build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder() .addGenericDocuments(appFunctionRuntimeMetadata) diff --git a/services/tests/appfunctions/src/com/android/server/appfunctions/MetadataSyncAdapterTest.kt b/services/tests/appfunctions/src/com/android/server/appfunctions/MetadataSyncAdapterTest.kt index 6930b3c0699b..63cf7bf7cb5e 100644 --- a/services/tests/appfunctions/src/com/android/server/appfunctions/MetadataSyncAdapterTest.kt +++ b/services/tests/appfunctions/src/com/android/server/appfunctions/MetadataSyncAdapterTest.kt @@ -53,7 +53,7 @@ class MetadataSyncAdapterTest { fun getPackageToFunctionIdMap() { val searchSession = FakeSearchSession() val functionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId").build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder().addGenericDocuments(functionRuntimeMetadata).build() searchSession.put(putDocumentsRequest).get() @@ -74,13 +74,13 @@ class MetadataSyncAdapterTest { fun getPackageToFunctionIdMap_multipleDocuments() { val searchSession = FakeSearchSession() val functionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId").build() val functionRuntimeMetadata1 = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId1", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId1").build() val functionRuntimeMetadata2 = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId2", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId2").build() val functionRuntimeMetadata3 = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId3", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId3").build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder() .addGenericDocuments( @@ -133,7 +133,7 @@ class MetadataSyncAdapterTest { val runtimeSearchSession = FakeSearchSession() val staticSearchSession = FakeSearchSession() val functionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId").build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder().addGenericDocuments(functionRuntimeMetadata).build() runtimeSearchSession.put(putDocumentsRequest).get() @@ -177,7 +177,7 @@ class MetadataSyncAdapterTest { val runtimeSearchSession = FakeSearchSession() val staticSearchSession = FakeSearchSession() val functionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId").build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder().addGenericDocuments(functionRuntimeMetadata).build() staticSearchSession.put(putDocumentsRequest).get() @@ -234,7 +234,7 @@ class MetadataSyncAdapterTest { val runtimeSearchSession = FakeSearchSession() val staticSearchSession = FakeSearchSession() val functionRuntimeMetadata = - AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId", "").build() + AppFunctionRuntimeMetadata.Builder(TEST_TARGET_PKG_NAME, "testFunctionId").build() val putDocumentsRequest: PutDocumentsRequest = PutDocumentsRequest.Builder().addGenericDocuments(functionRuntimeMetadata).build() runtimeSearchSession.put(putDocumentsRequest).get() |