Skip to content

Commit 5705e1f

Browse files
authored
docs: Detail AWS SDK v2 support (#835)
1 parent 6043417 commit 5705e1f

File tree

4 files changed

+19
-3
lines changed

4 files changed

+19
-3
lines changed

README.md

+5-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ For more details about the design and architecture of the AWS Encryption SDK, se
88

99
[Security issue notifications](./CONTRIBUTING.md#security-issue-notifications)
1010

11-
See [Support Policy](./SUPPORT_POLICY.rst) for for details on the current support status of all major versions of this library.
11+
See [Support Policy](./SUPPORT_POLICY.rst) for details on the current support status of all major versions of this library.
1212

1313
## Getting Started
1414

@@ -37,12 +37,14 @@ To use the AWS Encryption SDK for Java you must have:
3737
### Optional Prerequisites
3838

3939
#### AWS Integration
40-
You don't need an Amazon Web Services (AWS) account to use the AWS Encryption SDK, but some of the [example code][examples] require an AWS account, an AWS KMS key, and the AWS SDK for Java 1.x. (The AWS Encryption SDK for Java does not support the AWS SDK for Java 2.x.)
40+
You don't need an Amazon Web Services (AWS) account to use the AWS Encryption SDK, but some [example code][examples] require an AWS account, an AWS KMS key, and the AWS SDK for Java (either 1.x or 2.x). Note that the `KmsAsyncClient` is not supported, only the synchronous client.
4141

4242
* **To create an AWS account**, go to [Sign In or Create an AWS Account](https://portal.aws.amazon.com/gp/aws/developer/registration/index.html) and then choose **I am a new user.** Follow the instructions to create an AWS account.
4343

4444
* **To create a symmetric encryption KMS key in AWS KMS**, see [Creating Keys](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html).
4545

46+
* **To download and install the AWS SDK for Java 2.x**, see [Installing the AWS SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/v2/developer-guide/getting-started.html).
47+
4648
* **To download and install the AWS SDK for Java 1.x**, see [Installing the AWS SDK for Java 1.x](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/getting-started.html).
4749

4850
#### Amazon Corretto Crypto Provider
@@ -133,7 +135,7 @@ public class StringExample {
133135
}
134136
```
135137

136-
You can find more examples in the [examples directory][examples].
138+
You can find more examples in the [example directory][examples].
137139

138140
## Public API
139141

src/main/java/com/amazonaws/encryptionsdk/kmssdkv2/AwsKmsMrkAwareMasterKeyProvider.java

+6
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,9 @@ public Builder discoveryMrkRegion(Region discoveryMrkRegion) {
109109
* #builderSupplier(Supplier)}; if you try to use these in combination, an {@link
110110
* IllegalStateException} will be thrown.
111111
*
112+
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
113+
* interface.
114+
*
112115
* @see KmsMasterKeyProvider.Builder#customRegionalClientSupplier(RegionalClientSupplier)
113116
*/
114117
public Builder customRegionalClientSupplier(RegionalClientSupplier regionalClientSupplier) {
@@ -125,6 +128,9 @@ public Builder customRegionalClientSupplier(RegionalClientSupplier regionalClien
125128
* KmsClientBuilder} to configure KMS clients. Note that the region set on this builder will be
126129
* ignored, but all other settings will be propagated into the regional clients.
127130
*
131+
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
132+
* interface.
133+
*
128134
* @see KmsMasterKeyProvider.Builder#builderSupplier(Supplier)
129135
*/
130136
public Builder builderSupplier(Supplier<KmsClientBuilder> supplier) {

src/main/java/com/amazonaws/encryptionsdk/kmssdkv2/KmsMasterKeyProvider.java

+6
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,9 @@ public Builder defaultRegion(Region defaultRegion) {
8989
* #builderSupplier(Supplier)}; if you try to use these in combination, an {@link
9090
* IllegalStateException} will be thrown.
9191
*
92+
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
93+
* interface.
94+
*
9295
* @param regionalClientSupplier
9396
* @return
9497
*/
@@ -110,6 +113,9 @@ public Builder customRegionalClientSupplier(RegionalClientSupplier regionalClien
110113
* #customRegionalClientSupplier(RegionalClientSupplier)} will cause an {@link
111114
* IllegalStateException} to be thrown.
112115
*
116+
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
117+
* interface.
118+
*
113119
* @param supplier Should return a new {@link KmsClientBuilder} on each invocation.
114120
* @return
115121
*/

src/main/java/com/amazonaws/encryptionsdk/kmssdkv2/RegionalClientSupplier.java

+2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ public interface RegionalClientSupplier {
99
* Supplies an {@link KmsClient} instance to use for a given {@link Region}. The {@link
1010
* KmsMasterKeyProvider} will not cache the result of this function.
1111
*
12+
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient} interface.
13+
*
1214
* @param region The region to get a client for
1315
* @return The client to use, or null if this region cannot or should not be used.
1416
*/

0 commit comments

Comments
 (0)