From e8f41cec6e59ce74ecc84e3932d965e0ff216b92 Mon Sep 17 00:00:00 2001 From: Vinay Gera Date: Thu, 2 Jan 2020 09:49:35 -0800 Subject: [PATCH 1/3] code update --- .../cryptography/KeyEncryptionKeyAsyncClient.java | 12 ++++++------ .../keys/cryptography/KeyEncryptionKeyClient.java | 4 +++- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java index a9215929a256..2e7d80a45d0d 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java @@ -17,6 +17,7 @@ public final class KeyEncryptionKeyAsyncClient extends CryptographyAsyncClient implements AsyncKeyEncryptionKey { private final ClientLogger logger = new ClientLogger(KeyEncryptionKeyAsyncClient.class); + private final String keyId; /** * Creates a KeyEncryptionKeyAsyncClient that uses {@code pipeline} to service requests @@ -27,18 +28,17 @@ public final class KeyEncryptionKeyAsyncClient extends CryptographyAsyncClient i */ KeyEncryptionKeyAsyncClient(String keyId, HttpPipeline pipeline, CryptographyServiceVersion version) { super(keyId, pipeline, version); + this.keyId = keyId; } /** - * {@inheritDoc} + * Get the identifier of the key to use for cryptography operations. + * + * @return A {@link Mono} containing the key identifier. */ @Override public Mono getKeyId() { - try { - return Mono.just(key.getId()); - } catch (RuntimeException ex) { - return monoError(logger, ex); - } + return Mono.defer(() -> Mono.just(keyId)); } /** diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyClient.java b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyClient.java index 494bfad93373..0c56841b80e8 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyClient.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyClient.java @@ -21,7 +21,9 @@ public final class KeyEncryptionKeyClient implements KeyEncryptionKey { } /** - * {@inheritDoc} + * Get the identifier of the key to use for cryptography operations. + * + * @return The key identifier. */ @Override public String getKeyId() { From c106b4c057f4e9330d775b5f44b6bd0a476d1d3a Mon Sep 17 00:00:00 2001 From: Vinay Gera Date: Thu, 2 Jan 2020 11:43:38 -0800 Subject: [PATCH 2/3] refactor code --- .../keyvault/keys/cryptography/CryptographyAsyncClient.java | 6 ++++++ .../keys/cryptography/KeyEncryptionKeyAsyncClient.java | 4 +--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java index 8143a33328c3..66f093d52947 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java @@ -62,6 +62,7 @@ public class CryptographyAsyncClient { private LocalKeyCryptographyClient localKeyCryptographyClient; private final ClientLogger logger = new ClientLogger(CryptographyAsyncClient.class); private String keyCollection; + private String keyId; /** * Creates a CryptographyAsyncClient that uses {@code pipeline} to service requests @@ -102,6 +103,7 @@ public class CryptographyAsyncClient { */ CryptographyAsyncClient(String keyId, HttpPipeline pipeline, CryptographyServiceVersion version) { unpackAndValidateId(keyId); + this.keyId = keyId; service = RestProxy.create(CryptographyService.class, pipeline); cryptographyServiceClient = new CryptographyServiceClient(keyId, service); this.key = null; @@ -123,6 +125,10 @@ private void initializeCryptoClients() { } } + Mono getKeyId() { + return Mono.defer(() -> Mono.just(keyId)); + } + /** * Gets the public part of the configured key. The get key operation is applicable to all key types and it requires * the {@code keys/get} permission. diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java index 2e7d80a45d0d..d8f25c4d32f4 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/KeyEncryptionKeyAsyncClient.java @@ -17,7 +17,6 @@ public final class KeyEncryptionKeyAsyncClient extends CryptographyAsyncClient implements AsyncKeyEncryptionKey { private final ClientLogger logger = new ClientLogger(KeyEncryptionKeyAsyncClient.class); - private final String keyId; /** * Creates a KeyEncryptionKeyAsyncClient that uses {@code pipeline} to service requests @@ -28,7 +27,6 @@ public final class KeyEncryptionKeyAsyncClient extends CryptographyAsyncClient i */ KeyEncryptionKeyAsyncClient(String keyId, HttpPipeline pipeline, CryptographyServiceVersion version) { super(keyId, pipeline, version); - this.keyId = keyId; } /** @@ -38,7 +36,7 @@ public final class KeyEncryptionKeyAsyncClient extends CryptographyAsyncClient i */ @Override public Mono getKeyId() { - return Mono.defer(() -> Mono.just(keyId)); + return super.getKeyId(); } /** From 40c78ab8f9d76c22f92354d2a15ef32cc8236619 Mon Sep 17 00:00:00 2001 From: Vinay Gera Date: Thu, 2 Jan 2020 11:58:40 -0800 Subject: [PATCH 3/3] checkstyle fix --- .../keyvault/keys/cryptography/CryptographyAsyncClient.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java index 66f093d52947..1d93fd6bcbf6 100644 --- a/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java +++ b/sdk/keyvault/azure-security-keyvault-keys/src/main/java/com/azure/security/keyvault/keys/cryptography/CryptographyAsyncClient.java @@ -62,7 +62,7 @@ public class CryptographyAsyncClient { private LocalKeyCryptographyClient localKeyCryptographyClient; private final ClientLogger logger = new ClientLogger(CryptographyAsyncClient.class); private String keyCollection; - private String keyId; + private final String keyId; /** * Creates a CryptographyAsyncClient that uses {@code pipeline} to service requests @@ -84,6 +84,7 @@ public class CryptographyAsyncClient { throw new IllegalArgumentException("Json Web Key's key type property is not configured"); } this.key = key; + this.keyId = key.getId(); service = RestProxy.create(CryptographyService.class, pipeline); if (!Strings.isNullOrEmpty(key.getId())) { unpackAndValidateId(key.getId());