Loading services/core/java/com/android/server/role/RoleUserState.java +14 −35 Original line number Diff line number Diff line Loading @@ -121,8 +121,6 @@ public class RoleUserState { */ public int getVersion() { synchronized (mLock) { throwIfDestroyedLocked(); return mVersion; } } Loading @@ -134,8 +132,6 @@ public class RoleUserState { */ public void setVersion(int version) { synchronized (mLock) { throwIfDestroyedLocked(); if (mVersion == version) { return; } Loading Loading @@ -163,8 +159,6 @@ public class RoleUserState { */ public void setPackagesHash(@Nullable String packagesHash) { synchronized (mLock) { throwIfDestroyedLocked(); if (Objects.equals(mPackagesHash, packagesHash)) { return; } Loading @@ -182,8 +176,6 @@ public class RoleUserState { */ public boolean isRoleAvailable(@NonNull String roleName) { synchronized (mLock) { throwIfDestroyedLocked(); return mRoles.containsKey(roleName); } } Loading @@ -198,8 +190,6 @@ public class RoleUserState { @Nullable public ArraySet<String> getRoleHolders(@NonNull String roleName) { synchronized (mLock) { throwIfDestroyedLocked(); ArraySet<String> packageNames = mRoles.get(roleName); if (packageNames == null) { return null; Loading @@ -217,8 +207,6 @@ public class RoleUserState { */ public boolean addRoleName(@NonNull String roleName) { synchronized (mLock) { throwIfDestroyedLocked(); if (!mRoles.containsKey(roleName)) { mRoles.put(roleName, new ArraySet<>()); Slog.i(LOG_TAG, "Added new role: " + roleName); Loading @@ -237,8 +225,6 @@ public class RoleUserState { */ public void setRoleNames(@NonNull List<String> roleNames) { synchronized (mLock) { throwIfDestroyedLocked(); boolean changed = false; for (int i = mRoles.size() - 1; i >= 0; i--) { Loading Loading @@ -279,8 +265,6 @@ public class RoleUserState { boolean changed; synchronized (mLock) { throwIfDestroyedLocked(); ArraySet<String> roleHolders = mRoles.get(roleName); if (roleHolders == null) { Slog.e(LOG_TAG, "Cannot add role holder for unknown role, role: " + roleName Loading Loading @@ -312,8 +296,6 @@ public class RoleUserState { boolean changed; synchronized (mLock) { throwIfDestroyedLocked(); ArraySet<String> roleHolders = mRoles.get(roleName); if (roleHolders == null) { Slog.e(LOG_TAG, "Cannot remove role holder for unknown role, role: " + roleName Loading @@ -338,14 +320,16 @@ public class RoleUserState { */ @NonNull public List<String> getHeldRoles(@NonNull String packageName) { ArrayList<String> result = new ArrayList<>(); synchronized (mLock) { List<String> roleNames = new ArrayList<>(); int size = mRoles.size(); for (int i = 0; i < size; i++) { if (mRoles.valueAt(i).contains(packageName)) { result.add(mRoles.keyAt(i)); roleNames.add(mRoles.keyAt(i)); } } return roleNames; } return result; } /** Loading @@ -353,7 +337,9 @@ public class RoleUserState { */ @GuardedBy("mLock") private void scheduleWriteFileLocked() { throwIfDestroyedLocked(); if (mDestroyed) { return; } if (!mWriteScheduled) { mWriteHandler.sendMessageDelayed(PooledLambda.obtainMessage(RoleUserState::writeFile, Loading Loading @@ -537,8 +523,6 @@ public class RoleUserState { String packagesHash; ArrayMap<String, ArraySet<String>> roles; synchronized (mLock) { throwIfDestroyedLocked(); version = mVersion; packagesHash = mPackagesHash; roles = snapshotRolesLocked(); Loading Loading @@ -602,20 +586,15 @@ public class RoleUserState { */ public void destroy() { synchronized (mLock) { throwIfDestroyedLocked(); if (mDestroyed) { throw new IllegalStateException("This RoleUserState has already been destroyed"); } mWriteHandler.removeCallbacksAndMessages(null); getFile(mUserId).delete(); mDestroyed = true; } } @GuardedBy("mLock") private void throwIfDestroyedLocked() { if (mDestroyed) { throw new IllegalStateException("This RoleUserState has already been destroyed"); } } @NonNull private static File getFile(@UserIdInt int userId) { return new File(Environment.getUserSystemDirectory(userId), ROLES_FILE_NAME); Loading Loading
services/core/java/com/android/server/role/RoleUserState.java +14 −35 Original line number Diff line number Diff line Loading @@ -121,8 +121,6 @@ public class RoleUserState { */ public int getVersion() { synchronized (mLock) { throwIfDestroyedLocked(); return mVersion; } } Loading @@ -134,8 +132,6 @@ public class RoleUserState { */ public void setVersion(int version) { synchronized (mLock) { throwIfDestroyedLocked(); if (mVersion == version) { return; } Loading Loading @@ -163,8 +159,6 @@ public class RoleUserState { */ public void setPackagesHash(@Nullable String packagesHash) { synchronized (mLock) { throwIfDestroyedLocked(); if (Objects.equals(mPackagesHash, packagesHash)) { return; } Loading @@ -182,8 +176,6 @@ public class RoleUserState { */ public boolean isRoleAvailable(@NonNull String roleName) { synchronized (mLock) { throwIfDestroyedLocked(); return mRoles.containsKey(roleName); } } Loading @@ -198,8 +190,6 @@ public class RoleUserState { @Nullable public ArraySet<String> getRoleHolders(@NonNull String roleName) { synchronized (mLock) { throwIfDestroyedLocked(); ArraySet<String> packageNames = mRoles.get(roleName); if (packageNames == null) { return null; Loading @@ -217,8 +207,6 @@ public class RoleUserState { */ public boolean addRoleName(@NonNull String roleName) { synchronized (mLock) { throwIfDestroyedLocked(); if (!mRoles.containsKey(roleName)) { mRoles.put(roleName, new ArraySet<>()); Slog.i(LOG_TAG, "Added new role: " + roleName); Loading @@ -237,8 +225,6 @@ public class RoleUserState { */ public void setRoleNames(@NonNull List<String> roleNames) { synchronized (mLock) { throwIfDestroyedLocked(); boolean changed = false; for (int i = mRoles.size() - 1; i >= 0; i--) { Loading Loading @@ -279,8 +265,6 @@ public class RoleUserState { boolean changed; synchronized (mLock) { throwIfDestroyedLocked(); ArraySet<String> roleHolders = mRoles.get(roleName); if (roleHolders == null) { Slog.e(LOG_TAG, "Cannot add role holder for unknown role, role: " + roleName Loading Loading @@ -312,8 +296,6 @@ public class RoleUserState { boolean changed; synchronized (mLock) { throwIfDestroyedLocked(); ArraySet<String> roleHolders = mRoles.get(roleName); if (roleHolders == null) { Slog.e(LOG_TAG, "Cannot remove role holder for unknown role, role: " + roleName Loading @@ -338,14 +320,16 @@ public class RoleUserState { */ @NonNull public List<String> getHeldRoles(@NonNull String packageName) { ArrayList<String> result = new ArrayList<>(); synchronized (mLock) { List<String> roleNames = new ArrayList<>(); int size = mRoles.size(); for (int i = 0; i < size; i++) { if (mRoles.valueAt(i).contains(packageName)) { result.add(mRoles.keyAt(i)); roleNames.add(mRoles.keyAt(i)); } } return roleNames; } return result; } /** Loading @@ -353,7 +337,9 @@ public class RoleUserState { */ @GuardedBy("mLock") private void scheduleWriteFileLocked() { throwIfDestroyedLocked(); if (mDestroyed) { return; } if (!mWriteScheduled) { mWriteHandler.sendMessageDelayed(PooledLambda.obtainMessage(RoleUserState::writeFile, Loading Loading @@ -537,8 +523,6 @@ public class RoleUserState { String packagesHash; ArrayMap<String, ArraySet<String>> roles; synchronized (mLock) { throwIfDestroyedLocked(); version = mVersion; packagesHash = mPackagesHash; roles = snapshotRolesLocked(); Loading Loading @@ -602,20 +586,15 @@ public class RoleUserState { */ public void destroy() { synchronized (mLock) { throwIfDestroyedLocked(); if (mDestroyed) { throw new IllegalStateException("This RoleUserState has already been destroyed"); } mWriteHandler.removeCallbacksAndMessages(null); getFile(mUserId).delete(); mDestroyed = true; } } @GuardedBy("mLock") private void throwIfDestroyedLocked() { if (mDestroyed) { throw new IllegalStateException("This RoleUserState has already been destroyed"); } } @NonNull private static File getFile(@UserIdInt int userId) { return new File(Environment.getUserSystemDirectory(userId), ROLES_FILE_NAME); Loading