summaryrefslogtreecommitdiff
path: root/PermissionController/role-controller
diff options
context:
space:
mode:
authorHai Zhang <zhanghai@google.com>2023-12-13 14:57:16 +0000
committerHai Zhang <zhanghai@google.com>2023-12-13 14:59:45 +0000
commit9d83423c24eeefd9a9ef1bafe9f5db91ee975a50 (patch)
treefd965d1b3818612e17ab8002484fee069d05f66b /PermissionController/role-controller
parent56b4d1308fac599ea2a64bcbee4cf02b5b401098 (diff)
downloadPermission-9d83423c24eeefd9a9ef1bafe9f5db91ee975a50.tar.gz
Allow RoleBehavior.getDefaultHoldersAsUser() to fall back to config value.
Bug: 283989236 Bug: 291794775 Test: presubmit Change-Id: I877786987e15d9f0602cebb66362cbb5abf4992f
Diffstat (limited to 'PermissionController/role-controller')
-rw-r--r--PermissionController/role-controller/java/com/android/role/controller/model/Role.java10
-rw-r--r--PermissionController/role-controller/java/com/android/role/controller/model/RoleBehavior.java4
2 files changed, 9 insertions, 5 deletions
diff --git a/PermissionController/role-controller/java/com/android/role/controller/model/Role.java b/PermissionController/role-controller/java/com/android/role/controller/model/Role.java
index 6c7eb7d9e..31216f72d 100644
--- a/PermissionController/role-controller/java/com/android/role/controller/model/Role.java
+++ b/PermissionController/role-controller/java/com/android/role/controller/model/Role.java
@@ -416,10 +416,14 @@ public class Role {
@NonNull
public List<String> getDefaultHoldersAsUser(@NonNull UserHandle user,
@NonNull Context context) {
- if (mDefaultHoldersResourceName == null) {
- if (mBehavior != null) {
- return mBehavior.getDefaultHoldersAsUser(this, user, context);
+ if (mBehavior != null) {
+ List<String> defaultHolders = mBehavior.getDefaultHoldersAsUser(this, user, context);
+ if (defaultHolders != null) {
+ return defaultHolders;
}
+ }
+
+ if (mDefaultHoldersResourceName == null) {
return Collections.emptyList();
}
diff --git a/PermissionController/role-controller/java/com/android/role/controller/model/RoleBehavior.java b/PermissionController/role-controller/java/com/android/role/controller/model/RoleBehavior.java
index 4bc1873d5..3849a50e3 100644
--- a/PermissionController/role-controller/java/com/android/role/controller/model/RoleBehavior.java
+++ b/PermissionController/role-controller/java/com/android/role/controller/model/RoleBehavior.java
@@ -48,10 +48,10 @@ public interface RoleBehavior {
/**
* @see Role#getDefaultHolders(Context)
*/
- @NonNull
+ @Nullable
default List<String> getDefaultHoldersAsUser(@NonNull Role role, @NonNull UserHandle user,
@NonNull Context context) {
- return Collections.emptyList();
+ return null;
}
/**