Loading services/core/java/com/android/server/accounts/AccountManagerService.java +36 −54 Original line number Diff line number Diff line Loading @@ -660,12 +660,7 @@ public class AccountManagerService long identityToken = clearCallingIdentity(); try { UserAccounts accounts = getUserAccounts(userId); synchronized (accounts.cacheLock) { if (!accountExistsCacheLocked(accounts, account)) { return null; } return readUserDataInternalLocked(accounts, account, key); } return readUserDataInternal(accounts, account, key); } finally { restoreCallingIdentity(identityToken); } Loading Loading @@ -1717,33 +1712,18 @@ public class AccountManagerService long identityToken = clearCallingIdentity(); try { UserAccounts accounts = getUserAccounts(userId); synchronized (accounts.cacheLock) { if (!accountExistsCacheLocked(accounts, account)) { return; } setUserdataInternalLocked(accounts, account, key, value); } setUserdataInternal(accounts, account, key, value); } finally { restoreCallingIdentity(identityToken); } } private boolean accountExistsCacheLocked(UserAccounts accounts, Account account) { if (accounts.accountCache.containsKey(account.type)) { for (Account acc : accounts.accountCache.get(account.type)) { if (acc.name.equals(account.name)) { return true; } } } return false; } private void setUserdataInternalLocked(UserAccounts accounts, Account account, String key, private void setUserdataInternal(UserAccounts accounts, Account account, String key, String value) { if (account == null || key == null) { return; } synchronized (accounts.cacheLock) { final SQLiteDatabase db = accounts.openHelper.getWritableDatabase(); db.beginTransaction(); try { Loading Loading @@ -1771,6 +1751,7 @@ public class AccountManagerService db.endTransaction(); } } } private void onResult(IAccountManagerResponse response, Bundle result) { if (result == null) { Loading Loading @@ -4803,8 +4784,8 @@ public class AccountManagerService } } protected String readUserDataInternalLocked( UserAccounts accounts, Account account, String key) { protected String readUserDataInternal(UserAccounts accounts, Account account, String key) { synchronized (accounts.cacheLock) { HashMap<String, String> userDataForAccount = accounts.userDataCache.get(account); if (userDataForAccount == null) { // need to populate the cache for this account Loading @@ -4814,6 +4795,7 @@ public class AccountManagerService } return userDataForAccount.get(key); } } protected HashMap<String, String> readUserDataForAccountFromDatabaseLocked( final SQLiteDatabase db, Account account) { Loading Loading
services/core/java/com/android/server/accounts/AccountManagerService.java +36 −54 Original line number Diff line number Diff line Loading @@ -660,12 +660,7 @@ public class AccountManagerService long identityToken = clearCallingIdentity(); try { UserAccounts accounts = getUserAccounts(userId); synchronized (accounts.cacheLock) { if (!accountExistsCacheLocked(accounts, account)) { return null; } return readUserDataInternalLocked(accounts, account, key); } return readUserDataInternal(accounts, account, key); } finally { restoreCallingIdentity(identityToken); } Loading Loading @@ -1717,33 +1712,18 @@ public class AccountManagerService long identityToken = clearCallingIdentity(); try { UserAccounts accounts = getUserAccounts(userId); synchronized (accounts.cacheLock) { if (!accountExistsCacheLocked(accounts, account)) { return; } setUserdataInternalLocked(accounts, account, key, value); } setUserdataInternal(accounts, account, key, value); } finally { restoreCallingIdentity(identityToken); } } private boolean accountExistsCacheLocked(UserAccounts accounts, Account account) { if (accounts.accountCache.containsKey(account.type)) { for (Account acc : accounts.accountCache.get(account.type)) { if (acc.name.equals(account.name)) { return true; } } } return false; } private void setUserdataInternalLocked(UserAccounts accounts, Account account, String key, private void setUserdataInternal(UserAccounts accounts, Account account, String key, String value) { if (account == null || key == null) { return; } synchronized (accounts.cacheLock) { final SQLiteDatabase db = accounts.openHelper.getWritableDatabase(); db.beginTransaction(); try { Loading Loading @@ -1771,6 +1751,7 @@ public class AccountManagerService db.endTransaction(); } } } private void onResult(IAccountManagerResponse response, Bundle result) { if (result == null) { Loading Loading @@ -4803,8 +4784,8 @@ public class AccountManagerService } } protected String readUserDataInternalLocked( UserAccounts accounts, Account account, String key) { protected String readUserDataInternal(UserAccounts accounts, Account account, String key) { synchronized (accounts.cacheLock) { HashMap<String, String> userDataForAccount = accounts.userDataCache.get(account); if (userDataForAccount == null) { // need to populate the cache for this account Loading @@ -4814,6 +4795,7 @@ public class AccountManagerService } return userDataForAccount.get(key); } } protected HashMap<String, String> readUserDataForAccountFromDatabaseLocked( final SQLiteDatabase db, Account account) { Loading