diff options
| author | Harsh Shandilya <me@msfjarvis.dev> | 2022-07-15 00:53:48 +0530 |
|---|---|---|
| committer | Harsh Shandilya <me@msfjarvis.dev> | 2022-07-15 01:13:47 +0530 |
| commit | 549ee790d3e52bc62565ddf92e6a556e98b5195e (patch) | |
| tree | d5758e5eb80093704e683c8da926838e18182588 /crypto-common/src/main/kotlin/dev/msfjarvis/aps/crypto/KeyManager.kt | |
| parent | 010c6e227c9cc27f4d01bc912311f977b2aeb3a7 (diff) | |
| download | HardenedPass-549ee790d3e52bc62565ddf92e6a556e98b5195e.tar.gz HardenedPass-549ee790d3e52bc62565ddf92e6a556e98b5195e.zip | |
all: re-do package structure yet again
Diffstat (limited to 'crypto-common/src/main/kotlin/dev/msfjarvis/aps/crypto/KeyManager.kt')
| -rw-r--r-- | crypto-common/src/main/kotlin/dev/msfjarvis/aps/crypto/KeyManager.kt | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/crypto-common/src/main/kotlin/dev/msfjarvis/aps/crypto/KeyManager.kt b/crypto-common/src/main/kotlin/dev/msfjarvis/aps/crypto/KeyManager.kt deleted file mode 100644 index b7783163..00000000 --- a/crypto-common/src/main/kotlin/dev/msfjarvis/aps/crypto/KeyManager.kt +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright © 2014-2021 The Android Password Store Authors. All Rights Reserved. - * SPDX-License-Identifier: GPL-3.0-only - */ - -package dev.msfjarvis.aps.crypto - -import com.github.michaelbull.result.Result - -/** - * [KeyManager] defines a contract for implementing a management system for [Key]s as they would be - * used by an implementation of [CryptoHandler] to obtain eligible public or private keys as - * required. - */ -public interface KeyManager<Key, KeyIdentifier> { - - /** - * Inserts a [key] into the store. If the key already exists, this method will return - * [dev.msfjarvis.aps.crypto.errors.KeyAlreadyExistsException] unless [replace] is `true`. - */ - public suspend fun addKey(key: Key, replace: Boolean = false): Result<Key, Throwable> - - /** Removes [key] from the store. */ - public suspend fun removeKey(key: Key): Result<Key, Throwable> - - /** - * Get a [Key] for the given [id]. The actual semantics of what [id] is are left to individual - * implementations to figure out for themselves. For example, in GPG this can be a full - * hexadecimal key ID, an email, a short hex key ID, and probably a few more things. - */ - public suspend fun getKeyById(id: KeyIdentifier): Result<Key, Throwable> - - /** Returns all keys currently in the store as a [List]. */ - public suspend fun getAllKeys(): Result<List<Key>, Throwable> - - /** - * Get a stable identifier for the given [key]. The returned key ID should be suitable to be used - * as an identifier for the cryptographic identity tied to this key. - */ - public suspend fun getKeyId(key: Key): KeyIdentifier? - - /** Given a [fileName], return whether this instance can handle it. */ - public fun canHandle(fileName: String): Boolean -} |
