summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorDmitry Dementyev <dementyev@google.com>2018-01-10 12:26:05 -0800
committerDmitry Dementyev <dementyev@google.com>2018-01-10 14:26:26 -0800
commite77a24b8b8d177cc64e0afe0dd0073af58be36ac (patch)
tree14caf376e474d1d36f0d6e9db8a7d07215fed4c5 /core/java/android
parentf77780836118ae1c0dbafca850df65265142c428 (diff)
Add remove method to RecoverableKeyStoreLoader.
Bug: 66499222 Test: GTS tests will be added. Change-Id: If352d75fbabe33e3453baed806f569931dbd8ad7
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/security/recoverablekeystore/RecoverableKeyStoreLoader.java19
1 files changed, 18 insertions, 1 deletions
diff --git a/core/java/android/security/recoverablekeystore/RecoverableKeyStoreLoader.java b/core/java/android/security/recoverablekeystore/RecoverableKeyStoreLoader.java
index b5ec79567734..a65330ca105d 100644
--- a/core/java/android/security/recoverablekeystore/RecoverableKeyStoreLoader.java
+++ b/core/java/android/security/recoverablekeystore/RecoverableKeyStoreLoader.java
@@ -478,10 +478,12 @@ public class RecoverableKeyStoreLoader {
* Generates a key called {@code alias} and loads it into the recoverable key store. Returns the
* raw material of the key.
*
+ * @param alias The key alias.
* @throws RecoverableKeyStoreLoaderException if an error occurred generating and storing the
* key.
*/
- public byte[] generateAndStoreKey(String alias) throws RecoverableKeyStoreLoaderException {
+ public byte[] generateAndStoreKey(@NonNull String alias)
+ throws RecoverableKeyStoreLoaderException {
try {
return mBinder.generateAndStoreKey(alias);
} catch (RemoteException e) {
@@ -490,4 +492,19 @@ public class RecoverableKeyStoreLoader {
throw RecoverableKeyStoreLoaderException.fromServiceSpecificException(e);
}
}
+
+ /**
+ * Removes a key called {@code alias} from the recoverable key store.
+ *
+ * @param alias The key alias.
+ */
+ public void removeKey(@NonNull String alias) throws RecoverableKeyStoreLoaderException {
+ try {
+ mBinder.removeKey(alias);
+ } catch (RemoteException e) {
+ throw e.rethrowFromSystemServer();
+ } catch (ServiceSpecificException e) {
+ throw RecoverableKeyStoreLoaderException.fromServiceSpecificException(e);
+ }
+ }
}