Skip to content

Commit 4cb8c9a

Browse files
authored
fix(AWSMobileClient): getTokens latency fix (#2075)
1 parent ea4e089 commit 4cb8c9a

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

aws-android-sdk-core/src/main/java/com/amazonaws/internal/keyvaluestore/AWSKeyValueStore.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,11 @@ public synchronized void setPersistenceEnabled(boolean isPersistenceEnabled) {
180180
*/
181181
public synchronized boolean contains(final String dataKey) {
182182
if (isPersistenceEnabled) {
183-
return sharedPreferencesForData.contains(getDataKeyUsedInPersistentStore(dataKey));
183+
if (cache.containsKey(dataKey)) {
184+
return true;
185+
} else {
186+
return sharedPreferencesForData.contains(getDataKeyUsedInPersistentStore(dataKey));
187+
}
184188
} else {
185189
return cache.containsKey(dataKey);
186190
}
@@ -201,7 +205,7 @@ public synchronized String get(final String dataKey) {
201205
return null;
202206
}
203207

204-
if (!isPersistenceEnabled) {
208+
if (cache.containsKey(dataKey) || !isPersistenceEnabled) {
205209
return cache.get(dataKey);
206210
}
207211

aws-android-sdk-mobile-client/src/main/java/com/amazonaws/mobile/client/AWSMobileClient.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1762,7 +1762,7 @@ protected void federateWithCognitoIdentity(final String providerKey,
17621762
@WorkerThread
17631763
public Tokens getTokens() throws Exception {
17641764
final InternalCallback<Tokens> internalCallback = new InternalCallback<Tokens>();
1765-
return internalCallback.await(_getTokens(internalCallback, true));
1765+
return internalCallback.await(_getTokens(internalCallback, false));
17661766
}
17671767

17681768
/**
@@ -1775,7 +1775,7 @@ public Tokens getTokens() throws Exception {
17751775
@AnyThread
17761776
public void getTokens(final Callback<Tokens> callback) {
17771777
final InternalCallback<Tokens> internalCallback = new InternalCallback<Tokens>(callback);
1778-
internalCallback.async(_getTokens(internalCallback, true));
1778+
internalCallback.async(_getTokens(internalCallback, false));
17791779
}
17801780

17811781
protected Tokens getTokens(boolean waitForSignIn) throws Exception {

0 commit comments

Comments
 (0)