diff options
| author | Harsh Shandilya <me@msfjarvis.dev> | 2021-07-11 22:52:26 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-07-11 17:22:26 +0000 |
| commit | 6e4ffe290265ef8b3cd82f5ab6a7eb8c0157bf6a (patch) | |
| tree | 13739c1079e5cd4ce609cdbb4501450b2eabecb4 /app/src/main/java/dev/msfjarvis/aps/injection/crypto/CryptoHandlerModule.kt | |
| parent | 9c388e49748084bdac3fb277ea507b80b9c7c33a (diff) | |
| download | HardenedPass-6e4ffe290265ef8b3cd82f5ab6a7eb8c0157bf6a.tar.gz HardenedPass-6e4ffe290265ef8b3cd82f5ab6a7eb8c0157bf6a.zip | |
Add initial implementation of Gopenpgp-backed PGP (#1441)
Diffstat (limited to 'app/src/main/java/dev/msfjarvis/aps/injection/crypto/CryptoHandlerModule.kt')
| -rw-r--r-- | app/src/main/java/dev/msfjarvis/aps/injection/crypto/CryptoHandlerModule.kt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/app/src/main/java/dev/msfjarvis/aps/injection/crypto/CryptoHandlerModule.kt b/app/src/main/java/dev/msfjarvis/aps/injection/crypto/CryptoHandlerModule.kt new file mode 100644 index 00000000..fdd37bf3 --- /dev/null +++ b/app/src/main/java/dev/msfjarvis/aps/injection/crypto/CryptoHandlerModule.kt @@ -0,0 +1,31 @@ +/* + * Copyright © 2014-2021 The Android Password Store Authors. All Rights Reserved. + * SPDX-License-Identifier: GPL-3.0-only + */ + +package dev.msfjarvis.aps.injection.crypto + +import dagger.Module +import dagger.Provides +import dagger.hilt.InstallIn +import dagger.hilt.components.SingletonComponent +import dagger.multibindings.IntoSet +import dev.msfjarvis.aps.data.crypto.CryptoHandler +import dev.msfjarvis.aps.data.crypto.GopenpgpCryptoHandler + +/** + * This module adds all [CryptoHandler] implementations into a Set which makes it easier to build + * generic UIs which are not tied to a specific implementation because of injection. + */ +@Module +@InstallIn(SingletonComponent::class) +object CryptoHandlerModule { + @Provides + @IntoSet + fun providePgpCryptoHandler(): CryptoHandler { + return GopenpgpCryptoHandler() + } +} + +/** Typealias for a [Set] of [CryptoHandler] instances injected by Dagger. */ +typealias CryptoSet = Set<@JvmSuppressWildcards CryptoHandler> |
