Skip to content

Commit 980d83a

Browse files
committed
Rename some classes
1 parent 2df5f83 commit 980d83a

File tree

20 files changed

+92
-92
lines changed

20 files changed

+92
-92
lines changed

app/src/main/kotlin/com/darkrockstudios/app/securecamera/App.kt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ import androidx.compose.ui.Modifier
1414
import androidx.lifecycle.compose.LifecycleResumeEffect
1515
import androidx.navigation.NavHostController
1616
import androidx.navigation.compose.rememberNavController
17-
import com.darkrockstudios.app.securecamera.auth.AuthorizationManager
17+
import com.darkrockstudios.app.securecamera.auth.AuthorizationRepository
1818
import com.darkrockstudios.app.securecamera.navigation.AppDestinations
1919
import com.darkrockstudios.app.securecamera.navigation.AppNavHost
2020
import com.darkrockstudios.app.securecamera.navigation.enforceAuth
21-
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesManager
21+
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesDataSource
2222
import com.darkrockstudios.app.securecamera.ui.theme.SecureCameraTheme
2323
import org.koin.compose.KoinContext
2424
import org.koin.compose.koinInject
@@ -29,13 +29,13 @@ fun App(capturePhoto: MutableState<Boolean?>) {
2929
SecureCameraTheme {
3030
val snackbarHostState = remember { SnackbarHostState() }
3131
val navController = rememberNavController()
32-
val preferencesManager = koinInject<AppPreferencesManager>()
33-
val authorizationManager = koinInject<AuthorizationManager>()
32+
val preferencesManager = koinInject<AppPreferencesDataSource>()
33+
val authorizationRepository = koinInject<AuthorizationRepository>()
3434

3535
val hasCompletedIntro by preferencesManager.hasCompletedIntro.collectAsState(initial = null)
3636
val startDestination = rememberSaveable(hasCompletedIntro) {
3737
if (hasCompletedIntro == true) {
38-
if (authorizationManager.checkSessionValidity()) {
38+
if (authorizationRepository.checkSessionValidity()) {
3939
AppDestinations.CAMERA_ROUTE
4040
} else {
4141
AppDestinations.PIN_VERIFICATION_ROUTE
@@ -45,7 +45,7 @@ fun App(capturePhoto: MutableState<Boolean?>) {
4545
}
4646
}
4747

48-
VerifySessionOnResume(navController, hasCompletedIntro, authorizationManager)
48+
VerifySessionOnResume(navController, hasCompletedIntro, authorizationRepository)
4949

5050
if (hasCompletedIntro != null) {
5151
Scaffold(
@@ -70,12 +70,12 @@ fun App(capturePhoto: MutableState<Boolean?>) {
7070
fun VerifySessionOnResume(
7171
navController: NavHostController,
7272
hasCompletedIntro: Boolean?,
73-
authorizationManager: AuthorizationManager
73+
authorizationRepository: AuthorizationRepository
7474
) {
7575
var requireAuthCheck = remember { false }
7676
LifecycleResumeEffect(hasCompletedIntro) {
7777
if (hasCompletedIntro == true && requireAuthCheck) {
78-
enforceAuth(authorizationManager, navController.currentDestination, navController)
78+
enforceAuth(authorizationRepository, navController.currentDestination, navController)
7979
}
8080
onPauseOrDispose {
8181
requireAuthCheck = true

app/src/main/kotlin/com/darkrockstudios/app/securecamera/AppModule.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
package com.darkrockstudios.app.securecamera
22

3-
import com.darkrockstudios.app.securecamera.auth.AuthorizationManager
3+
import com.darkrockstudios.app.securecamera.auth.AuthorizationRepository
44
import com.darkrockstudios.app.securecamera.camera.SecureImageRepository
55
import com.darkrockstudios.app.securecamera.camera.ThumbnailCache
66
import com.darkrockstudios.app.securecamera.gallery.GalleryViewModel
77
import com.darkrockstudios.app.securecamera.obfuscation.ObfuscatePhotoViewModel
8-
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesManager
8+
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesDataSource
99
import com.darkrockstudios.app.securecamera.settings.SettingsViewModel
1010
import com.darkrockstudios.app.securecamera.usecases.PinStrengthCheckUseCase
1111
import com.darkrockstudios.app.securecamera.usecases.SecurityResetUseCase
@@ -18,8 +18,8 @@ import org.koin.dsl.module
1818

1919
val appModule = module {
2020
singleOf(::SecureImageRepository)
21-
single<AppPreferencesManager> { AppPreferencesManager(context = get()) }
22-
singleOf(::AuthorizationManager)
21+
single<AppPreferencesDataSource> { AppPreferencesDataSource(context = get()) }
22+
singleOf(::AuthorizationRepository)
2323
singleOf(::LocationRepository)
2424

2525
factoryOf(::ThumbnailCache)

app/src/main/kotlin/com/darkrockstudios/app/securecamera/auth/AuthorizationManager.kt renamed to app/src/main/kotlin/com/darkrockstudios/app/securecamera/auth/AuthorizationRepository.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.darkrockstudios.app.securecamera.auth
22

3-
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesManager
3+
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesDataSource
44
import com.darkrockstudios.app.securecamera.preferences.HashedPin
55
import kotlinx.coroutines.flow.MutableStateFlow
66
import kotlinx.coroutines.flow.StateFlow
@@ -10,8 +10,8 @@ import kotlinx.coroutines.runBlocking
1010
/**
1111
* Manages user authorization state, including PIN verification and session expiration.
1212
*/
13-
class AuthorizationManager(
14-
private val preferencesManager: AppPreferencesManager
13+
class AuthorizationRepository(
14+
private val preferencesManager: AppPreferencesDataSource
1515
) {
1616
companion object {
1717
const val MAX_FAILED_ATTEMPTS = 10

app/src/main/kotlin/com/darkrockstudios/app/securecamera/auth/PinVerificationContent.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ fun PinVerificationContent(
4343
returnRoute: String,
4444
modifier: Modifier = Modifier
4545
) {
46-
val authManager = koinInject<AuthorizationManager>()
46+
val authManager = koinInject<AuthorizationRepository>()
4747
val imageManager = koinInject<SecureImageRepository>()
4848
val securityResetUseCase = koinInject<SecurityResetUseCase>()
4949
val verifyPinUseCase = koinInject<VerifyPinUseCase>()
@@ -71,14 +71,14 @@ fun PinVerificationContent(
7171
val allDataDeletedText = stringResource(R.string.pin_verification_all_data_deleted)
7272
val remainingAttemptsText = stringResource(
7373
R.string.pin_verification_remaining_attempts,
74-
AuthorizationManager.MAX_FAILED_ATTEMPTS - failedAttempts,
75-
AuthorizationManager.MAX_FAILED_ATTEMPTS
74+
AuthorizationRepository.MAX_FAILED_ATTEMPTS - failedAttempts,
75+
AuthorizationRepository.MAX_FAILED_ATTEMPTS
7676
)
7777
val verifyWithCountdownText =
7878
stringResource(R.string.pin_verification_verify_with_countdown, remainingBackoffSeconds)
7979
val verifyOrWipeText = stringResource(R.string.pin_verification_verify_or_wipe)
8080
val wipeWarningText =
81-
stringResource(R.string.pin_verification_wipe_warning, AuthorizationManager.MAX_FAILED_ATTEMPTS)
81+
stringResource(R.string.pin_verification_wipe_warning, AuthorizationRepository.MAX_FAILED_ATTEMPTS)
8282

8383
val focusRequester = remember { FocusRequester() }
8484

@@ -149,7 +149,7 @@ fun PinVerificationContent(
149149
remainingBackoffSeconds = authManager.calculateRemainingBackoffSeconds()
150150
isBackoffActive = remainingBackoffSeconds > 0
151151

152-
if (failedAttempts < AuthorizationManager.MAX_FAILED_ATTEMPTS) {
152+
if (failedAttempts < AuthorizationRepository.MAX_FAILED_ATTEMPTS) {
153153
withContext(Dispatchers.Main) {
154154
vibrateDevice(context)
155155

@@ -242,7 +242,7 @@ fun PinVerificationContent(
242242

243243
Spacer(modifier = Modifier.height(24.dp))
244244

245-
val isLastAttempt = (failedAttempts >= (AuthorizationManager.MAX_FAILED_ATTEMPTS - 1))
245+
val isLastAttempt = (failedAttempts >= (AuthorizationRepository.MAX_FAILED_ATTEMPTS - 1))
246246
val butColors = if (isLastAttempt) {
247247
ButtonDefaults.buttonColors(containerColor = MaterialTheme.colorScheme.errorContainer)
248248
} else {

app/src/main/kotlin/com/darkrockstudios/app/securecamera/camera/CameraControls.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import com.ashampoo.kim.model.GpsCoordinates
2424
import com.darkrockstudios.app.securecamera.LocationRepository
2525
import com.darkrockstudios.app.securecamera.R
2626
import com.darkrockstudios.app.securecamera.RequestLocationPermission
27-
import com.darkrockstudios.app.securecamera.auth.AuthorizationManager
27+
import com.darkrockstudios.app.securecamera.auth.AuthorizationRepository
2828
import com.darkrockstudios.app.securecamera.gallery.vibrateDevice
2929
import com.darkrockstudios.app.securecamera.navigation.AppDestinations
3030
import kotlinx.coroutines.Dispatchers
@@ -48,7 +48,7 @@ fun CameraControls(
4848
val isLoading by remember { derivedStateOf { activeJobs.isNotEmpty() } }
4949
var isFlashing by rememberSaveable { mutableStateOf(false) }
5050
val imageSaver = koinInject<SecureImageRepository>()
51-
val authManager = koinInject<AuthorizationManager>()
51+
val authManager = koinInject<AuthorizationRepository>()
5252
val locationRepository = koinInject<LocationRepository>()
5353
val context = LocalContext.current
5454

app/src/main/kotlin/com/darkrockstudios/app/securecamera/camera/SecureImageRepository.kt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ import com.ashampoo.kim.common.convertToPhotoMetadata
1010
import com.ashampoo.kim.model.GpsCoordinates
1111
import com.ashampoo.kim.model.MetadataUpdate
1212
import com.ashampoo.kim.model.TiffOrientation
13-
import com.darkrockstudios.app.securecamera.auth.AuthorizationManager
14-
import com.darkrockstudios.app.securecamera.auth.AuthorizationManager.SecurityPin
15-
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesManager
13+
import com.darkrockstudios.app.securecamera.auth.AuthorizationRepository
14+
import com.darkrockstudios.app.securecamera.auth.AuthorizationRepository.SecurityPin
15+
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesDataSource
1616
import com.darkrockstudios.app.securecamera.preferences.HashedPin
1717
import dev.whyoleg.cryptography.BinarySize
1818
import dev.whyoleg.cryptography.BinarySize.Companion.bytes
@@ -35,8 +35,8 @@ private data class KeyParams(
3535

3636
class SecureImageRepository(
3737
private val appContext: Context,
38-
private val preferencesManager: AppPreferencesManager,
39-
private val authorizationManager: AuthorizationManager,
38+
private val preferencesManager: AppPreferencesDataSource,
39+
private val authorizationRepository: AuthorizationRepository,
4040
internal val thumbnailCache: ThumbnailCache,
4141
) {
4242

@@ -163,7 +163,7 @@ class SecureImageRepository(
163163
private suspend fun encryptAndSaveImage(imageBytes: ByteArray, tempFile: File, targetFile: File) {
164164
tempFile.writeBytes(imageBytes)
165165

166-
val pin = authorizationManager.securityPin ?: throw IllegalStateException("No Security PIN")
166+
val pin = authorizationRepository.securityPin ?: throw IllegalStateException("No Security PIN")
167167
encryptToFile(
168168
plainPin = pin.plainPin,
169169
hashedPin = pin.hashedPin,
@@ -312,7 +312,7 @@ class SecureImageRepository(
312312
}
313313

314314
suspend fun readImage(photo: PhotoDef): Bitmap {
315-
val pin = authorizationManager.securityPin ?: throw IllegalStateException("No Security PIN")
315+
val pin = authorizationRepository.securityPin ?: throw IllegalStateException("No Security PIN")
316316

317317
val plainBytes = decryptFile(
318318
plainPin = pin.plainPin,
@@ -324,7 +324,7 @@ class SecureImageRepository(
324324

325325
suspend fun decryptJpg(
326326
photo: PhotoDef,
327-
pin: SecurityPin = authorizationManager.securityPin ?: throw IllegalStateException("No Security PIN")
327+
pin: SecurityPin = authorizationRepository.securityPin ?: throw IllegalStateException("No Security PIN")
328328
): ByteArray {
329329
val plainBytes = decryptFile(
330330
plainPin = pin.plainPin,
@@ -348,7 +348,7 @@ class SecureImageRepository(
348348
suspend fun readThumbnail(photo: PhotoDef): Bitmap {
349349
thumbnailCache.getThumbnail(photo)?.let { return it }
350350

351-
val pin = authorizationManager.securityPin ?: throw IllegalStateException("No Security PIN")
351+
val pin = authorizationRepository.securityPin ?: throw IllegalStateException("No Security PIN")
352352
val thumbFile = getThumbnail(photo)
353353

354354
val thumbnailBitmap = if (thumbFile.exists()) {

app/src/main/kotlin/com/darkrockstudios/app/securecamera/gallery/GalleryViewModel.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import androidx.lifecycle.viewModelScope
55
import com.darkrockstudios.app.securecamera.BaseViewModel
66
import com.darkrockstudios.app.securecamera.camera.PhotoDef
77
import com.darkrockstudios.app.securecamera.camera.SecureImageRepository
8-
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesManager
8+
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesDataSource
99
import com.darkrockstudios.app.securecamera.share.sharePhotosWithProvider
1010
import kotlinx.coroutines.Dispatchers
1111
import kotlinx.coroutines.flow.update
@@ -14,7 +14,7 @@ import kotlinx.coroutines.withContext
1414

1515
class GalleryViewModel(
1616
private val imageManager: SecureImageRepository,
17-
private val preferencesManager: AppPreferencesManager
17+
private val preferencesManager: AppPreferencesDataSource
1818
) : BaseViewModel<GalleryUiState>() {
1919

2020
override fun createState() = GalleryUiState()

app/src/main/kotlin/com/darkrockstudios/app/securecamera/introduction/IntroductionContent.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@ import androidx.compose.ui.text.style.TextAlign
2626
import androidx.compose.ui.unit.dp
2727
import androidx.navigation.NavHostController
2828
import com.darkrockstudios.app.securecamera.R
29-
import com.darkrockstudios.app.securecamera.auth.AuthorizationManager
29+
import com.darkrockstudios.app.securecamera.auth.AuthorizationRepository
3030
import com.darkrockstudios.app.securecamera.auth.pinSize
3131
import com.darkrockstudios.app.securecamera.navigation.AppDestinations
32-
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesManager
32+
import com.darkrockstudios.app.securecamera.preferences.AppPreferencesDataSource
3333
import com.darkrockstudios.app.securecamera.usecases.PinStrengthCheckUseCase
3434
import kotlinx.coroutines.launch
3535
import org.koin.compose.koinInject
@@ -43,8 +43,8 @@ fun IntroductionContent(
4343
navController: NavHostController,
4444
modifier: Modifier = Modifier
4545
) {
46-
val preferencesManager = koinInject<AppPreferencesManager>()
47-
val authorizationManager = koinInject<AuthorizationManager>()
46+
val preferencesManager = koinInject<AppPreferencesDataSource>()
47+
val authorizationRepository = koinInject<AuthorizationRepository>()
4848
val coroutineScope = rememberCoroutineScope()
4949

5050
val slides = listOf(
@@ -104,7 +104,7 @@ fun IntroductionContent(
104104
onPinCreated = { pin ->
105105
coroutineScope.launch {
106106
preferencesManager.setAppPin(pin)
107-
authorizationManager.verifyPin(pin)
107+
authorizationRepository.verifyPin(pin)
108108
preferencesManager.setIntroCompleted(true)
109109
// Navigate to camera and clear the back stack
110110
navController.navigate(AppDestinations.CAMERA_ROUTE) {

app/src/main/kotlin/com/darkrockstudios/app/securecamera/navigation/AppNavigation.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import androidx.navigation.compose.NavHost
1515
import androidx.navigation.navArgument
1616
import com.darkrockstudios.app.securecamera.R
1717
import com.darkrockstudios.app.securecamera.about.AboutContent
18-
import com.darkrockstudios.app.securecamera.auth.AuthorizationManager
18+
import com.darkrockstudios.app.securecamera.auth.AuthorizationRepository
1919
import com.darkrockstudios.app.securecamera.auth.PinVerificationContent
2020
import com.darkrockstudios.app.securecamera.camera.CameraContent
2121
import com.darkrockstudios.app.securecamera.camera.SecureImageRepository
@@ -42,7 +42,7 @@ fun AppNavHost(
4242
paddingValues: PaddingValues,
4343
) {
4444
val imageManager = koinInject<SecureImageRepository>()
45-
val authManager = koinInject<AuthorizationManager>()
45+
val authManager = koinInject<AuthorizationRepository>()
4646

4747
val scope = rememberCoroutineScope()
4848

@@ -211,7 +211,7 @@ fun AppNavHost(
211211
* PinVerification.
212212
*/
213213
fun enforceAuth(
214-
authManager: AuthorizationManager,
214+
authManager: AuthorizationRepository,
215215
destination: NavDestination?,
216216
navController: NavHostController
217217
) {

app/src/main/kotlin/com/darkrockstudios/app/securecamera/preferences/AppPreferencesManager.kt renamed to app/src/main/kotlin/com/darkrockstudios/app/securecamera/preferences/AppPreferencesDataSource.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ private val Context.dataStore: DataStore<Preferences> by preferencesDataStore(na
2626
/**
2727
* Manages app preferences using DataStore
2828
*/
29-
class AppPreferencesManager(
29+
class AppPreferencesDataSource(
3030
private val context: Context,
3131
private val dataStore: DataStore<Preferences> = context.dataStore,
3232
) {

0 commit comments

Comments
 (0)