Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Detail AWS SDK v2 support #835

Merged
merged 6 commits into from
Jun 14, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ For more details about the design and architecture of the AWS Encryption SDK, se

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

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

## Getting Started

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

#### AWS Integration
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.)
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.

* **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.

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

* **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).

* **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).

#### Amazon Corretto Crypto Provider
Expand Down Expand Up @@ -133,7 +135,7 @@ public class StringExample {
}
```

You can find more examples in the [examples directory][examples].
You can find more examples in the [example directory][examples].

## Public API

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,9 @@ public Builder discoveryMrkRegion(Region discoveryMrkRegion) {
* #builderSupplier(Supplier)}; if you try to use these in combination, an {@link
* IllegalStateException} will be thrown.
*
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
* interface.
*
* @see KmsMasterKeyProvider.Builder#customRegionalClientSupplier(RegionalClientSupplier)
*/
public Builder customRegionalClientSupplier(RegionalClientSupplier regionalClientSupplier) {
Expand All @@ -125,6 +128,9 @@ public Builder customRegionalClientSupplier(RegionalClientSupplier regionalClien
* KmsClientBuilder} to configure KMS clients. Note that the region set on this builder will be
* ignored, but all other settings will be propagated into the regional clients.
*
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
* interface.
*
* @see KmsMasterKeyProvider.Builder#builderSupplier(Supplier)
*/
public Builder builderSupplier(Supplier<KmsClientBuilder> supplier) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,9 @@ public Builder defaultRegion(Region defaultRegion) {
* #builderSupplier(Supplier)}; if you try to use these in combination, an {@link
* IllegalStateException} will be thrown.
*
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
* interface.
*
* @param regionalClientSupplier
* @return
*/
Expand All @@ -110,6 +113,9 @@ public Builder customRegionalClientSupplier(RegionalClientSupplier regionalClien
* #customRegionalClientSupplier(RegionalClientSupplier)} will cause an {@link
* IllegalStateException} to be thrown.
*
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient}
* interface.
*
* @param supplier Should return a new {@link KmsClientBuilder} on each invocation.
* @return
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ public interface RegionalClientSupplier {
* Supplies an {@link KmsClient} instance to use for a given {@link Region}. The {@link
* KmsMasterKeyProvider} will not cache the result of this function.
*
* <p>Note: The AWS Encryption SDK for Java does not support the {@code KmsAsyncClient} interface.
*
* @param region The region to get a client for
* @return The client to use, or null if this region cannot or should not be used.
*/
Expand Down