Skip to content

Commit df4f699

Browse files
committed
[fix] #79 캐싱된 JWT 토큰 제거 시점 수정
1 parent 602bb8d commit df4f699

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

core/data/src/main/java/com/neki/android/core/data/repository/impl/TokenRepositoryImpl.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import androidx.datastore.preferences.core.Preferences
55
import androidx.datastore.preferences.core.edit
66
import com.neki.android.core.common.crypto.CryptoManager
77
import com.neki.android.core.dataapi.datastore.DataStoreKey
8+
import com.neki.android.core.dataapi.auth.AuthCacheManager
89
import com.neki.android.core.dataapi.repository.TokenRepository
910
import kotlinx.coroutines.flow.Flow
1011
import kotlinx.coroutines.flow.map
@@ -13,6 +14,7 @@ import javax.inject.Inject
1314

1415
class TokenRepositoryImpl @Inject constructor(
1516
@TokenDataStore private val dataStore: DataStore<Preferences>,
17+
private val authCacheManager: AuthCacheManager,
1618
) : TokenRepository {
1719
override suspend fun saveTokens(
1820
accessToken: String,
@@ -22,6 +24,7 @@ class TokenRepositoryImpl @Inject constructor(
2224
preferences[DataStoreKey.ACCESS_TOKEN] = CryptoManager.encrypt(accessToken)
2325
preferences[DataStoreKey.REFRESH_TOKEN] = CryptoManager.encrypt(refreshToken)
2426
}
27+
authCacheManager.invalidateTokenCache()
2528
}
2629

2730
override fun isSavedTokens(): Flow<Boolean> {
@@ -50,5 +53,6 @@ class TokenRepositoryImpl @Inject constructor(
5053
preferences.remove(DataStoreKey.ACCESS_TOKEN)
5154
preferences.remove(DataStoreKey.REFRESH_TOKEN)
5255
}
56+
authCacheManager.invalidateTokenCache()
5357
}
5458
}

feature/auth/impl/src/main/kotlin/com/neki/android/feature/auth/impl/LoginViewModel.kt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package com.neki.android.feature.auth.impl
22

33
import androidx.lifecycle.ViewModel
44
import androidx.lifecycle.viewModelScope
5-
import com.neki.android.core.dataapi.auth.AuthCacheManager
65
import com.neki.android.core.dataapi.auth.AuthEventManager
76
import com.neki.android.core.dataapi.repository.AuthRepository
87
import com.neki.android.core.dataapi.repository.TokenRepository
@@ -19,7 +18,6 @@ class LoginViewModel @Inject constructor(
1918
private val authEventManager: AuthEventManager,
2019
private val tokenRepository: TokenRepository,
2120
private val authRepository: AuthRepository,
22-
private val authCacheManager: AuthCacheManager,
2321
) : ViewModel() {
2422
val store: MviIntentStore<LoginState, LoginIntent, LoginSideEffect> =
2523
mviIntentStore(
@@ -48,7 +46,6 @@ class LoginViewModel @Inject constructor(
4846
refreshToken = tokenRepository.getRefreshToken().first(),
4947
).onSuccess {
5048
tokenRepository.saveTokens(it.accessToken, it.refreshToken)
51-
authCacheManager.invalidateTokenCache()
5249
postSideEffect(LoginSideEffect.NavigateToHome)
5350
}.onFailure { exception ->
5451
Timber.e(exception)
@@ -71,7 +68,6 @@ class LoginViewModel @Inject constructor(
7168
accessToken = it.accessToken,
7269
refreshToken = it.refreshToken,
7370
)
74-
authCacheManager.invalidateTokenCache()
7571
postSideEffect(LoginSideEffect.NavigateToHome)
7672
}
7773
.onFailure { exception ->

0 commit comments

Comments
 (0)