Skip to content

Commit 0150b8b

Browse files
Merge pull request #899 from aws/staging/eaca728f-2dab-47fb-b1fd-7da8d5e9232b
Pull request: release <- staging/eaca728f-2dab-47fb-b1fd-7da8d5e9232b
2 parents 15921ac + 988a9d7 commit 0150b8b

File tree

303 files changed

+3796
-683
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

303 files changed

+3796
-683
lines changed

.changes/2.13.53.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
{
1111
"type": "feature",
1212
"category": "AWS Organizations",
13-
"description": "AI services opt out policies enable you to control what AI service data is collected and stored for the accounts in your organization. By default, AWS artificial intelligence (AI) services collect and store data as part of operating and supporting the continuous improvement life cycle for each service. You can use these policies to opt out of this process for all of your AWS accounts to ensure that your data is not persisted within AWS AI service data stores or used for service improvements."
13+
"description": "We have launched a self-service option to make it easier for customers to manage the use of their content by AI services. Certain AI services (Amazon CodeGuru Profiler, Amazon Comprehend, Amazon Lex, Amazon Polly, Amazon Rekognition, Amazon Textract, Amazon Transcribe, and Amazon Translate), may use content to improve the service. Customers have been able to opt out of this use by contacting AWS Support, and now they can opt out on a self-service basis by setting an Organizations policy for all or an individual AI service as listed above. Please refer to the technical documentation for more details."
1414
},
1515
{
1616
"type": "feature",

.changes/2.13.54.json

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
{
2+
"version": "2.13.54",
3+
"date": "2020-07-09",
4+
"entries": [
5+
{
6+
"type": "feature",
7+
"category": "Amazon DynamoDB Enhanced Client",
8+
"description": "Support converting \"0\" and \"1\" numbers read from DynamoDB to Boolean and AtomicBoolean."
9+
},
10+
{
11+
"type": "feature",
12+
"category": "Amazon Elastic Block Store",
13+
"description": "This release introduces the following set of actions for the EBS direct APIs: 1. StartSnapshot, which creates a new Amazon EBS snapshot. 2. PutSnapshotBlock, which writes a block of data to a snapshot. 3. CompleteSnapshot, which seals and completes a snapshot after blocks of data have been written to it."
14+
},
15+
{
16+
"type": "feature",
17+
"category": "Amazon Simple Notification Service",
18+
"description": "This release adds support for SMS origination number as an attribute in the MessageAttributes parameter for the SNS Publish API."
19+
},
20+
{
21+
"type": "feature",
22+
"category": "Amazon CloudWatch Events",
23+
"description": "Amazon CloudWatch Events/EventBridge adds support for API Gateway as a target."
24+
},
25+
{
26+
"type": "feature",
27+
"category": "Alexa For Business",
28+
"description": "Added support for registering an AVS device directly to a room using RegisterAVSDevice with a room ARN"
29+
},
30+
{
31+
"type": "feature",
32+
"category": "AWS Secrets Manager",
33+
"description": "Adds support for filters on the ListSecrets API to allow filtering results by name, tag key, tag value, or description. Adds support for the BlockPublicPolicy option on the PutResourcePolicy API to block resource policies which grant a wide range of IAM principals access to secrets. Adds support for the ValidateResourcePolicy API to validate resource policies for syntax and prevent lockout error scenarios and wide access to secrets."
34+
},
35+
{
36+
"type": "feature",
37+
"category": "Amazon EventBridge",
38+
"description": "Amazon EventBridge adds support for API Gateway as a target."
39+
},
40+
{
41+
"type": "feature",
42+
"category": "AWS Amplify",
43+
"description": "Documentation update to the introduction text to specify that this is the Amplify Console API."
44+
},
45+
{
46+
"type": "feature",
47+
"category": "AWS CloudHSM V2",
48+
"description": "Documentation updates for cloudhsmv2"
49+
},
50+
{
51+
"type": "feature",
52+
"category": "Amazon Comprehend",
53+
"description": "AWS Comprehend now supports Real-time Analysis with Custom Entity Recognition."
54+
},
55+
{
56+
"type": "feature",
57+
"category": "Amazon SageMaker Service",
58+
"description": "This release adds the DeleteHumanTaskUi API to Amazon Augmented AI"
59+
},
60+
{
61+
"type": "feature",
62+
"category": "AWS App Mesh",
63+
"description": "AppMesh now supports Ingress which allows resources outside a mesh to communicate to resources that are inside the mesh. See https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html"
64+
},
65+
{
66+
"type": "feature",
67+
"category": "AWS WAFV2",
68+
"description": "Added the option to use IP addresses from an HTTP header that you specify, instead of using the web request origin. Available for IP set matching, geo matching, and rate-based rule count aggregation."
69+
},
70+
{
71+
"type": "feature",
72+
"category": "AWS SDK for Java v2",
73+
"description": "Updated service endpoint metadata."
74+
}
75+
]
76+
}

CHANGELOG.md

Lines changed: 58 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,68 @@
1+
# __2.13.54__ __2020-07-09__
2+
## __AWS Amplify__
3+
- ### Features
4+
- Documentation update to the introduction text to specify that this is the Amplify Console API.
5+
6+
## __AWS App Mesh__
7+
- ### Features
8+
- AppMesh now supports Ingress which allows resources outside a mesh to communicate to resources that are inside the mesh. See https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
9+
10+
## __AWS CloudHSM V2__
11+
- ### Features
12+
- Documentation updates for cloudhsmv2
13+
14+
## __AWS SDK for Java v2__
15+
- ### Features
16+
- Updated service endpoint metadata.
17+
18+
## __AWS Secrets Manager__
19+
- ### Features
20+
- Adds support for filters on the ListSecrets API to allow filtering results by name, tag key, tag value, or description. Adds support for the BlockPublicPolicy option on the PutResourcePolicy API to block resource policies which grant a wide range of IAM principals access to secrets. Adds support for the ValidateResourcePolicy API to validate resource policies for syntax and prevent lockout error scenarios and wide access to secrets.
21+
22+
## __AWS WAFV2__
23+
- ### Features
24+
- Added the option to use IP addresses from an HTTP header that you specify, instead of using the web request origin. Available for IP set matching, geo matching, and rate-based rule count aggregation.
25+
26+
## __Alexa For Business__
27+
- ### Features
28+
- Added support for registering an AVS device directly to a room using RegisterAVSDevice with a room ARN
29+
30+
## __Amazon CloudWatch Events__
31+
- ### Features
32+
- Amazon CloudWatch Events/EventBridge adds support for API Gateway as a target.
33+
34+
## __Amazon Comprehend__
35+
- ### Features
36+
- AWS Comprehend now supports Real-time Analysis with Custom Entity Recognition.
37+
38+
## __Amazon DynamoDB Enhanced Client__
39+
- ### Features
40+
- Support converting "0" and "1" numbers read from DynamoDB to Boolean and AtomicBoolean.
41+
42+
## __Amazon Elastic Block Store__
43+
- ### Features
44+
- This release introduces the following set of actions for the EBS direct APIs: 1. StartSnapshot, which creates a new Amazon EBS snapshot. 2. PutSnapshotBlock, which writes a block of data to a snapshot. 3. CompleteSnapshot, which seals and completes a snapshot after blocks of data have been written to it.
45+
46+
## __Amazon EventBridge__
47+
- ### Features
48+
- Amazon EventBridge adds support for API Gateway as a target.
49+
50+
## __Amazon SageMaker Service__
51+
- ### Features
52+
- This release adds the DeleteHumanTaskUi API to Amazon Augmented AI
53+
54+
## __Amazon Simple Notification Service__
55+
- ### Features
56+
- This release adds support for SMS origination number as an attribute in the MessageAttributes parameter for the SNS Publish API.
57+
158
# __2.13.53__ __2020-07-08__
259
## __AWS Cost Explorer Service__
360
- ### Features
461
- Customers can now see Instance Name alongside each rightsizing recommendation.
562

663
## __AWS Organizations__
764
- ### Features
8-
- AI services opt out policies enable you to control what AI service data is collected and stored for the accounts in your organization. By default, AWS artificial intelligence (AI) services collect and store data as part of operating and supporting the continuous improvement life cycle for each service. You can use these policies to opt out of this process for all of your AWS accounts to ensure that your data is not persisted within AWS AI service data stores or used for service improvements.
65+
- We have launched a self-service option to make it easier for customers to manage the use of their content by AI services. Certain AI services (Amazon CodeGuru Profiler, Amazon Comprehend, Amazon Lex, Amazon Polly, Amazon Rekognition, Amazon Textract, Amazon Transcribe, and Amazon Translate), may use content to improve the service. Customers have been able to opt out of this use by contacting AWS Support, and now they can opt out on a self-service basis by setting an Organizations policy for all or an individual AI service as listed above. Please refer to the technical documentation for more details.
966

1067
## __AWS SDK for Java v2__
1168
- ### Features

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ To automatically manage module versions (currently all modules have the same ver
4949
<dependency>
5050
<groupId>software.amazon.awssdk</groupId>
5151
<artifactId>bom</artifactId>
52-
<version>2.13.53</version>
52+
<version>2.13.54</version>
5353
<type>pom</type>
5454
<scope>import</scope>
5555
</dependency>
@@ -83,12 +83,12 @@ Alternatively you can add dependencies for the specific services you use only:
8383
<dependency>
8484
<groupId>software.amazon.awssdk</groupId>
8585
<artifactId>ec2</artifactId>
86-
<version>2.13.53</version>
86+
<version>2.13.54</version>
8787
</dependency>
8888
<dependency>
8989
<groupId>software.amazon.awssdk</groupId>
9090
<artifactId>s3</artifactId>
91-
<version>2.13.53</version>
91+
<version>2.13.54</version>
9292
</dependency>
9393
```
9494

@@ -100,7 +100,7 @@ You can import the whole SDK into your project (includes *ALL* services). Please
100100
<dependency>
101101
<groupId>software.amazon.awssdk</groupId>
102102
<artifactId>aws-sdk-java</artifactId>
103-
<version>2.13.53</version>
103+
<version>2.13.54</version>
104104
</dependency>
105105
```
106106

archetypes/archetype-lambda/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>archetypes</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.13.53</version>
23+
<version>2.13.54</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626
<artifactId>archetype-lambda</artifactId>

archetypes/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>aws-sdk-java-pom</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.13.53</version>
23+
<version>2.13.54</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626
<artifactId>archetypes</artifactId>

aws-sdk-java/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<parent>
1818
<groupId>software.amazon.awssdk</groupId>
1919
<artifactId>aws-sdk-java-pom</artifactId>
20-
<version>2.13.53</version>
20+
<version>2.13.54</version>
2121
<relativePath>../pom.xml</relativePath>
2222
</parent>
2323
<artifactId>aws-sdk-java</artifactId>

bom-internal/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
<parent>
2121
<artifactId>aws-sdk-java-pom</artifactId>
2222
<groupId>software.amazon.awssdk</groupId>
23-
<version>2.13.53</version>
23+
<version>2.13.54</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626

bom/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<parent>
1818
<groupId>software.amazon.awssdk</groupId>
1919
<artifactId>aws-sdk-java-pom</artifactId>
20-
<version>2.13.53</version>
20+
<version>2.13.54</version>
2121
<relativePath>../pom.xml</relativePath>
2222
</parent>
2323
<artifactId>bom</artifactId>

bundle/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.13.53</version>
24+
<version>2.13.54</version>
2525
</parent>
2626
<artifactId>bundle</artifactId>
2727
<packaging>jar</packaging>

codegen-lite-maven-plugin/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<parent>
2323
<groupId>software.amazon.awssdk</groupId>
2424
<artifactId>aws-sdk-java-pom</artifactId>
25-
<version>2.13.53</version>
25+
<version>2.13.54</version>
2626
<relativePath>../pom.xml</relativePath>
2727
</parent>
2828
<artifactId>codegen-lite-maven-plugin</artifactId>

codegen-lite/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.13.53</version>
24+
<version>2.13.54</version>
2525
</parent>
2626
<artifactId>codegen-lite</artifactId>
2727
<name>AWS Java SDK :: Code Generator Lite</name>

codegen-maven-plugin/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<parent>
2323
<groupId>software.amazon.awssdk</groupId>
2424
<artifactId>aws-sdk-java-pom</artifactId>
25-
<version>2.13.53</version>
25+
<version>2.13.54</version>
2626
<relativePath>../pom.xml</relativePath>
2727
</parent>
2828
<artifactId>codegen-maven-plugin</artifactId>

codegen/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>software.amazon.awssdk</groupId>
2323
<artifactId>aws-sdk-java-pom</artifactId>
24-
<version>2.13.53</version>
24+
<version>2.13.54</version>
2525
</parent>
2626
<artifactId>codegen</artifactId>
2727
<name>AWS Java SDK :: Code Generator</name>

codegen/src/main/java/software/amazon/awssdk/codegen/poet/endpointdiscovery/EndpointDiscoveryAsyncCacheLoaderGenerator.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import com.squareup.javapoet.TypeSpec;
2828
import java.time.Instant;
2929
import java.time.temporal.ChronoUnit;
30+
import java.util.List;
3031
import java.util.concurrent.CompletableFuture;
3132
import software.amazon.awssdk.annotations.SdkInternalApi;
3233
import software.amazon.awssdk.codegen.emitters.GeneratorTaskParams;
@@ -38,6 +39,7 @@
3839
import software.amazon.awssdk.core.endpointdiscovery.EndpointDiscoveryCacheLoader;
3940
import software.amazon.awssdk.core.endpointdiscovery.EndpointDiscoveryEndpoint;
4041
import software.amazon.awssdk.core.endpointdiscovery.EndpointDiscoveryRequest;
42+
import software.amazon.awssdk.utils.Validate;
4143

4244
public class EndpointDiscoveryAsyncCacheLoaderGenerator implements ClassSpec {
4345

@@ -100,12 +102,15 @@ private MethodSpec discoverEndpoint(OperationModel opModel) {
100102
.returns(returnType);
101103

102104
if (!opModel.getInputShape().isHasHeaderMember()) {
105+
ClassName endpointClass = poetExtensions.getModelClass("Endpoint");
103106
methodBuilder.addCode("return $L.$L($L.builder().build()).thenApply(r -> {",
104107
CLIENT_FIELD,
105108
opModel.getMethodName(),
106109
poetExtensions.getModelClass(opModel.getInputShape().getC2jName()))
107-
.addStatement("$T endpoint = r.endpoints().get(0)",
108-
poetExtensions.getModelClass("Endpoint"))
110+
.addStatement("$T<$T> endpoints = r.endpoints()", List.class, endpointClass)
111+
.addStatement("$T.notEmpty(endpoints, \"Endpoints returned by service for endpoint discovery must "
112+
+ "not be empty.\")", Validate.class)
113+
.addStatement("$T endpoint = endpoints.get(0)", endpointClass)
109114
.addStatement("return $T.builder().endpoint(toUri(endpoint.address(), $L.defaultEndpoint()))" +
110115
".expirationTime($T.now().plus(endpoint.cachePeriodInMinutes(), $T.MINUTES)).build()",
111116
EndpointDiscoveryEndpoint.class,

codegen/src/main/java/software/amazon/awssdk/codegen/poet/endpointdiscovery/EndpointDiscoveryCacheLoaderGenerator.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import com.squareup.javapoet.TypeSpec;
2828
import java.time.Instant;
2929
import java.time.temporal.ChronoUnit;
30+
import java.util.List;
3031
import java.util.concurrent.CompletableFuture;
3132
import software.amazon.awssdk.annotations.SdkInternalApi;
3233
import software.amazon.awssdk.codegen.emitters.GeneratorTaskParams;
@@ -38,6 +39,7 @@
3839
import software.amazon.awssdk.core.endpointdiscovery.EndpointDiscoveryCacheLoader;
3940
import software.amazon.awssdk.core.endpointdiscovery.EndpointDiscoveryEndpoint;
4041
import software.amazon.awssdk.core.endpointdiscovery.EndpointDiscoveryRequest;
42+
import software.amazon.awssdk.utils.Validate;
4143

4244
public class EndpointDiscoveryCacheLoaderGenerator implements ClassSpec {
4345

@@ -101,14 +103,18 @@ private MethodSpec discoverEndpoint(OperationModel opModel) {
101103
.returns(returnType);
102104

103105
if (!opModel.getInputShape().isHasHeaderMember()) {
106+
ClassName endpointClass = poetExtensions.getModelClass("Endpoint");
104107
methodBuilder.addCode("return $T.supplyAsync(() -> {", CompletableFuture.class)
105108
.addStatement("$T response = $L.$L($L.builder().build())",
106109
poetExtensions.getModelClass(opModel.getOutputShape().getC2jName()),
107110
CLIENT_FIELD,
108111
opModel.getMethodName(),
109112
poetExtensions.getModelClass(opModel.getInputShape().getC2jName()))
110-
.addStatement("$T endpoint = response.endpoints().get(0)",
111-
poetExtensions.getModelClass("Endpoint"))
113+
.addStatement("$T<$T> endpoints = response.endpoints()", List.class, endpointClass)
114+
.addStatement("$T.notEmpty(endpoints, \"Endpoints returned by service for endpoint discovery must "
115+
+ "not be empty.\")", Validate.class)
116+
.addStatement("$T endpoint = endpoints.get(0)",
117+
endpointClass)
112118
.addStatement("return $T.builder().endpoint(toUri(endpoint.address(), $L.defaultEndpoint()))" +
113119
".expirationTime($T.now().plus(endpoint.cachePeriodInMinutes(), $T.MINUTES)).build()",
114120
EndpointDiscoveryEndpoint.class,

0 commit comments

Comments
 (0)