Skip to content

Commit 8cce205

Browse files
Merge pull request #1460 from aws/staging/9839c2b9-dd0f-4a78-8d01-794d66b7b90f
Pull request: release <- staging/9839c2b9-dd0f-4a78-8d01-794d66b7b90f
2 parents ea3fc05 + 284cb08 commit 8cce205

File tree

347 files changed

+1649
-393
lines changed

Some content is hidden

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

347 files changed

+1649
-393
lines changed

.changes/2.16.82.json

+72
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
{
2+
"version": "2.16.82",
3+
"date": "2021-06-10",
4+
"entries": [
5+
{
6+
"type": "feature",
7+
"category": "Amazon Redshift",
8+
"contributor": "",
9+
"description": "Added InvalidClusterStateFault to the ModifyAquaConfiguration API, thrown when calling the API on a non available cluster."
10+
},
11+
{
12+
"type": "bugfix",
13+
"category": "AWS SDK for Java v2",
14+
"contributor": "",
15+
"description": "Fix for PR [#2510](https://github.com/aws/aws-sdk-java-v2/issues/2510) by adding Support for customization of contentType for Header ContentType for services like aws WellArchitected service."
16+
},
17+
{
18+
"type": "feature",
19+
"category": "Amazon Chime",
20+
"contributor": "",
21+
"description": "This SDK release adds support for UpdateAccount API to allow users to update their default license on Chime account."
22+
},
23+
{
24+
"type": "feature",
25+
"category": "Amazon Elastic Compute Cloud",
26+
"contributor": "",
27+
"description": "This release adds a new optional parameter connectivityType (public, private) for the CreateNatGateway API. Private NatGateway does not require customers to attach an InternetGateway to the VPC and can be used for communication with other VPCs and on-premise networks."
28+
},
29+
{
30+
"type": "feature",
31+
"category": "Amazon Cognito Identity Provider",
32+
"contributor": "",
33+
"description": "Amazon Cognito now supports targeted sign out through refresh token revocation"
34+
},
35+
{
36+
"type": "feature",
37+
"category": "Amazon Appflow",
38+
"contributor": "",
39+
"description": "Adding MAP_ALL task type support."
40+
},
41+
{
42+
"type": "feature",
43+
"category": "Amazon Managed Blockchain",
44+
"contributor": "",
45+
"description": "This release supports KMS customer-managed Customer Master Keys (CMKs) on member-specific Hyperledger Fabric resources."
46+
},
47+
{
48+
"type": "feature",
49+
"category": "Amazon SageMaker Feature Store Runtime",
50+
"contributor": "",
51+
"description": "Release BatchGetRecord API for AWS SageMaker Feature Store Runtime."
52+
},
53+
{
54+
"type": "feature",
55+
"category": "AWS App Mesh",
56+
"contributor": "",
57+
"description": "AppMesh now supports additional routing capabilities in match and rewrites for Gateway Routes and Routes. Additionally, App Mesh also supports specifying DNS Response Types in Virtual Nodes."
58+
},
59+
{
60+
"type": "feature",
61+
"category": "Amazon SageMaker Service",
62+
"contributor": "",
63+
"description": "Using SageMaker Edge Manager with AWS IoT Greengrass v2 simplifies accessing, maintaining, and deploying models to your devices. You can now create deployable IoT Greengrass components during edge packaging jobs. You can choose to create a device fleet with or without creating an AWS IoT role alias."
64+
},
65+
{
66+
"type": "feature",
67+
"category": "AWS Resource Access Manager",
68+
"contributor": "",
69+
"description": "AWS Resource Access Manager (RAM) is releasing new field isResourceTypeDefault in ListPermissions and GetPermission response, and adding permissionArn parameter to GetResourceShare request to filter by permission attached"
70+
}
71+
]
72+
}

CHANGELOG.md

+45
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,48 @@
1+
# __2.16.82__ __2021-06-10__
2+
## __AWS App Mesh__
3+
- ### Features
4+
- AppMesh now supports additional routing capabilities in match and rewrites for Gateway Routes and Routes. Additionally, App Mesh also supports specifying DNS Response Types in Virtual Nodes.
5+
6+
## __AWS Resource Access Manager__
7+
- ### Features
8+
- AWS Resource Access Manager (RAM) is releasing new field isResourceTypeDefault in ListPermissions and GetPermission response, and adding permissionArn parameter to GetResourceShare request to filter by permission attached
9+
10+
## __AWS SDK for Java v2__
11+
- ### Bugfixes
12+
- Fix for PR [#2510](https://github.com/aws/aws-sdk-java-v2/issues/2510) by adding Support for customization of contentType for Header ContentType for services like aws WellArchitected service.
13+
14+
## __Amazon Appflow__
15+
- ### Features
16+
- Adding MAP_ALL task type support.
17+
18+
## __Amazon Chime__
19+
- ### Features
20+
- This SDK release adds support for UpdateAccount API to allow users to update their default license on Chime account.
21+
22+
## __Amazon Cognito Identity Provider__
23+
- ### Features
24+
- Amazon Cognito now supports targeted sign out through refresh token revocation
25+
26+
## __Amazon Elastic Compute Cloud__
27+
- ### Features
28+
- This release adds a new optional parameter connectivityType (public, private) for the CreateNatGateway API. Private NatGateway does not require customers to attach an InternetGateway to the VPC and can be used for communication with other VPCs and on-premise networks.
29+
30+
## __Amazon Managed Blockchain__
31+
- ### Features
32+
- This release supports KMS customer-managed Customer Master Keys (CMKs) on member-specific Hyperledger Fabric resources.
33+
34+
## __Amazon Redshift__
35+
- ### Features
36+
- Added InvalidClusterStateFault to the ModifyAquaConfiguration API, thrown when calling the API on a non available cluster.
37+
38+
## __Amazon SageMaker Feature Store Runtime__
39+
- ### Features
40+
- Release BatchGetRecord API for AWS SageMaker Feature Store Runtime.
41+
42+
## __Amazon SageMaker Service__
43+
- ### Features
44+
- Using SageMaker Edge Manager with AWS IoT Greengrass v2 simplifies accessing, maintaining, and deploying models to your devices. You can now create deployable IoT Greengrass components during edge packaging jobs. You can choose to create a device fleet with or without creating an AWS IoT role alias.
45+
146
# __2.16.81__ __2021-06-09__
247
## __AWS Proton__
348
- ### Features

README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ To automatically manage module versions (currently all modules have the same ver
5252
<dependency>
5353
<groupId>software.amazon.awssdk</groupId>
5454
<artifactId>bom</artifactId>
55-
<version>2.16.81</version>
55+
<version>2.16.82</version>
5656
<type>pom</type>
5757
<scope>import</scope>
5858
</dependency>
@@ -86,12 +86,12 @@ Alternatively you can add dependencies for the specific services you use only:
8686
<dependency>
8787
<groupId>software.amazon.awssdk</groupId>
8888
<artifactId>ec2</artifactId>
89-
<version>2.16.81</version>
89+
<version>2.16.82</version>
9090
</dependency>
9191
<dependency>
9292
<groupId>software.amazon.awssdk</groupId>
9393
<artifactId>s3</artifactId>
94-
<version>2.16.81</version>
94+
<version>2.16.82</version>
9595
</dependency>
9696
```
9797

@@ -103,7 +103,7 @@ You can import the whole SDK into your project (includes *ALL* services). Please
103103
<dependency>
104104
<groupId>software.amazon.awssdk</groupId>
105105
<artifactId>aws-sdk-java</artifactId>
106-
<version>2.16.81</version>
106+
<version>2.16.82</version>
107107
</dependency>
108108
```
109109

archetypes/archetype-app-quickstart/pom.xml

+1-1
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.16.81</version>
23+
<version>2.16.82</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626

archetypes/archetype-lambda/pom.xml

+1-1
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.16.81</version>
23+
<version>2.16.82</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626
<artifactId>archetype-lambda</artifactId>

archetypes/archetype-tools/pom.xml

+1-1
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.16.81</version>
23+
<version>2.16.82</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626

archetypes/pom.xml

+1-1
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.16.81</version>
23+
<version>2.16.82</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626
<artifactId>archetypes</artifactId>

aws-sdk-java/pom.xml

+1-1
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.16.81</version>
20+
<version>2.16.82</version>
2121
<relativePath>../pom.xml</relativePath>
2222
</parent>
2323
<artifactId>aws-sdk-java</artifactId>

bom-internal/pom.xml

+1-1
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.16.81</version>
23+
<version>2.16.82</version>
2424
</parent>
2525
<modelVersion>4.0.0</modelVersion>
2626

bom/pom.xml

+1-1
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.16.81</version>
20+
<version>2.16.82</version>
2121
<relativePath>../pom.xml</relativePath>
2222
</parent>
2323
<artifactId>bom</artifactId>

bundle/pom.xml

+1-1
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.16.81</version>
24+
<version>2.16.82</version>
2525
</parent>
2626
<artifactId>bundle</artifactId>
2727
<packaging>jar</packaging>

codegen-lite-maven-plugin/pom.xml

+1-1
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.16.81</version>
25+
<version>2.16.82</version>
2626
<relativePath>../pom.xml</relativePath>
2727
</parent>
2828
<artifactId>codegen-lite-maven-plugin</artifactId>

codegen-lite/pom.xml

+1-1
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.16.81</version>
24+
<version>2.16.82</version>
2525
</parent>
2626
<artifactId>codegen-lite</artifactId>
2727
<name>AWS Java SDK :: Code Generator Lite</name>

codegen-maven-plugin/pom.xml

+1-1
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.16.81</version>
25+
<version>2.16.82</version>
2626
<relativePath>../pom.xml</relativePath>
2727
</parent>
2828
<artifactId>codegen-maven-plugin</artifactId>

codegen/pom.xml

+1-1
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.16.81</version>
24+
<version>2.16.82</version>
2525
</parent>
2626
<artifactId>codegen</artifactId>
2727
<name>AWS Java SDK :: Code Generator</name>

codegen/src/main/java/software/amazon/awssdk/codegen/model/config/customization/MetadataConfig.java

+5
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,11 @@ public void setProtocol(final String protocol) {
3232
this.protocol = protocol;
3333
}
3434

35+
/**
36+
* Gets the Custom value for Content Type Header.
37+
* This customization is supported only for JSON protocol.
38+
* @return contentType.
39+
*/
3540
public String getContentType() {
3641
return contentType;
3742
}

codegen/src/main/java/software/amazon/awssdk/codegen/poet/client/specs/JsonProtocolSpec.java

+8-2
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import software.amazon.awssdk.awscore.eventstream.EventStreamTaggedUnionPojoSupplier;
3434
import software.amazon.awssdk.awscore.eventstream.RestEventStreamAsyncResponseTransformer;
3535
import software.amazon.awssdk.awscore.exception.AwsServiceException;
36+
import software.amazon.awssdk.codegen.model.config.customization.MetadataConfig;
3637
import software.amazon.awssdk.codegen.model.intermediate.IntermediateModel;
3738
import software.amazon.awssdk.codegen.model.intermediate.Metadata;
3839
import software.amazon.awssdk.codegen.model.intermediate.OperationModel;
@@ -94,8 +95,13 @@ public MethodSpec initProtocolFactory(IntermediateModel model) {
9495
.addCode(".protocolVersion($S)\n", metadata.getJsonVersion())
9596
.addCode("$L", customErrorCodeFieldName());
9697

97-
if (metadata.getContentType() != null) {
98-
methodSpec.addCode(".withContentTypeOverride($S)", metadata.getContentType());
98+
99+
String contentType = Optional.ofNullable(model.getCustomizationConfig().getCustomServiceMetadata())
100+
.map(MetadataConfig::getContentType)
101+
.orElse(metadata.getContentType());
102+
103+
if (contentType != null) {
104+
methodSpec.addCode(".contentType($S)", contentType);
99105
}
100106

101107
registerModeledExceptions(model, poetExtensions).forEach(methodSpec::addCode);

codegen/src/test/java/software/amazon/awssdk/codegen/poet/ClientTestModels.java

+12
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,18 @@ public static IntermediateModel endpointDiscoveryModels() {
8585
return new IntermediateModelBuilder(models).build();
8686
}
8787

88+
public static IntermediateModel customContentTypeModels() {
89+
File serviceModel = new File(ClientTestModels.class.getResource("client/c2j/customservicemetadata/service-2.json").getFile());
90+
File customizationModel = new File(ClientTestModels.class.getResource("client/c2j/customservicemetadata/customization.config").getFile());
91+
92+
C2jModels models = C2jModels.builder()
93+
.serviceModel(getServiceModel(serviceModel))
94+
.customizationConfig(getCustomizationConfig(customizationModel))
95+
.build();
96+
97+
return new IntermediateModelBuilder(models).build();
98+
}
99+
88100
public static IntermediateModel internalConfigModels() {
89101
File serviceModel = new File(ClientTestModels.class.getResource("client/c2j/internalconfig/service-2.json").getFile());
90102
File customizationModel = new File(ClientTestModels.class.getResource("client/c2j/internalconfig/customization.config").getFile());

codegen/src/test/java/software/amazon/awssdk/codegen/poet/client/PoetClientFunctionalTests.java

+13
Original file line numberDiff line numberDiff line change
@@ -104,4 +104,17 @@ public void asyncClientEndpointDiscovery() throws Exception {
104104
GeneratorTaskParams.create(ClientTestModels.endpointDiscoveryModels(), "sources/", "tests/"));
105105
assertThat(asyncClientEndpointDiscovery, generatesTo("test-endpoint-discovery-async.java"));
106106
}
107+
108+
@Test
109+
public void asyncClientCustomServiceMetaData() throws Exception {
110+
ClassSpec asyncClientCustomServiceMetaData = new AsyncClientClass(
111+
GeneratorTaskParams.create(ClientTestModels.customContentTypeModels(), "sources/", "tests/"));
112+
assertThat(asyncClientCustomServiceMetaData, generatesTo("test-customservicemetadata-async.java"));
113+
}
114+
115+
@Test
116+
public void syncClientCustomServiceMetaData() throws Exception {
117+
ClassSpec syncClientCustomServiceMetaData = createSyncClientClass(ClientTestModels.customContentTypeModels());
118+
assertThat(syncClientCustomServiceMetaData, generatesTo("test-customservicemetadata-sync.java"));
119+
}
107120
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"customServiceMetadata": {"contentType" : "application/json"}
3+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
{
2+
"version":"2.0",
3+
"metadata":{
4+
"apiVersion":"2016-03-11",
5+
"endpointPrefix":"customservicemetadataconfig",
6+
"jsonVersion":"1.1",
7+
"protocol":"rest-json",
8+
"serviceAbbreviation":"AmazonProtocolRestJsonWithContentType",
9+
"serviceFullName":"Amazon Protocol Rest Json",
10+
"serviceId":"AmazonProtocolRestJsonWithCustomContentType",
11+
"signatureVersion":"v4",
12+
"targetPrefix":"ProtocolTestsService",
13+
"uid":"restjson-2016-03-11"
14+
},
15+
"operations":{
16+
"OneOperation":{
17+
"name":"OneOperation",
18+
"http":{
19+
"method":"POST",
20+
"requestUri":"/2016-03-11/oneoperation"
21+
},
22+
"input":{"shape":"OneShape"}
23+
}
24+
},
25+
"shapes": {
26+
"OneShape": {
27+
"type": "structure",
28+
"members": {
29+
"StringMember": {
30+
"shape": "String"
31+
}
32+
}
33+
},
34+
"String":{"type":"string"}
35+
}
36+
}

0 commit comments

Comments
 (0)