Skip to content

Commit 77853f6

Browse files
authored
Merge pull request #383 from aws/staging/40d2b74d-93b3-4127-b229-dcfaa81b4126
Pull request: release <- staging/40d2b74d-93b3-4127-b229-dcfaa81b4126
2 parents b8f30e2 + c0d9df8 commit 77853f6

File tree

261 files changed

+2534
-496
lines changed

Some content is hidden

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

261 files changed

+2534
-496
lines changed

.changes/2.3.4.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"date": "2019-01-17",
3+
"version": "2.3.4",
4+
"entries": [
5+
{
6+
"category": "Amazon Pinpoint",
7+
"type": "feature",
8+
"description": "This release updates the PutEvents operation. AppPackageName, AppTitle, AppVersionCode, SdkName fields will now be accepted as a part of the event when submitting events."
9+
},
10+
{
11+
"category": "Amazon Rekognition",
12+
"type": "feature",
13+
"description": "GetLabelDetection now returns bounding box information for common objects and a hierarchical taxonomy of detected labels. The version of the model used for video label detection is also returned. DetectModerationLabels now returns the version of the model used for detecting unsafe content."
14+
},
15+
{
16+
"category": "AWS Lambda",
17+
"type": "feature",
18+
"description": "Documentation updates for AWS Lambda"
19+
},
20+
{
21+
"category": "Amazon Lightsail",
22+
"type": "feature",
23+
"description": "This release adds functionality to the CreateDiskSnapshot API that allows users to snapshot instance root volumes. It also adds various documentation updates."
24+
}
25+
]
26+
}

CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
# __2.3.4__ __2019-01-17__
2+
## __AWS Lambda__
3+
- ### Features
4+
- Documentation updates for AWS Lambda
5+
6+
## __Amazon Lightsail__
7+
- ### Features
8+
- This release adds functionality to the CreateDiskSnapshot API that allows users to snapshot instance root volumes. It also adds various documentation updates.
9+
10+
## __Amazon Pinpoint__
11+
- ### Features
12+
- This release updates the PutEvents operation. AppPackageName, AppTitle, AppVersionCode, SdkName fields will now be accepted as a part of the event when submitting events.
13+
14+
## __Amazon Rekognition__
15+
- ### Features
16+
- GetLabelDetection now returns bounding box information for common objects and a hierarchical taxonomy of detected labels. The version of the model used for video label detection is also returned. DetectModerationLabels now returns the version of the model used for detecting unsafe content.
17+
118
# __2.3.3__ __2019-01-16__
219
## __AWS Backup__
320
- ### Features

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ You can import the whole SDK into your project (includes all services) as follow
4444
<dependency>
4545
<groupId>software.amazon.awssdk</groupId>
4646
<artifactId>aws-sdk-java</artifactId>
47-
<version>2.3.3</version>
47+
<version>2.3.4</version>
4848
</dependency>
4949
```
5050

@@ -56,12 +56,12 @@ Alternatively you can add dependencies for the specific services you use only:
5656
<dependency>
5757
<groupId>software.amazon.awssdk</groupId>
5858
<artifactId>ec2</artifactId>
59-
<version>2.3.3</version>
59+
<version>2.3.4</version>
6060
</dependency>
6161
<dependency>
6262
<groupId>software.amazon.awssdk</groupId>
6363
<artifactId>s3</artifactId>
64-
<version>2.3.3</version>
64+
<version>2.3.4</version>
6565
</dependency>
6666
```
6767

@@ -75,7 +75,7 @@ To automatically manage module versions (currently all modules have the same ver
7575
<dependency>
7676
<groupId>software.amazon.awssdk</groupId>
7777
<artifactId>bom</artifactId>
78-
<version>2.3.3</version>
78+
<version>2.3.4</version>
7979
<type>pom</type>
8080
<scope>import</scope>
8181
</dependency>

aws-sdk-java/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>software.amazon.awssdk</groupId>
66
<artifactId>aws-sdk-java-pom</artifactId>
7-
<version>2.3.3</version>
7+
<version>2.3.4</version>
88
<relativePath>../pom.xml</relativePath>
99
</parent>
1010
<artifactId>aws-sdk-java</artifactId>

bom/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>software.amazon.awssdk</groupId>
66
<artifactId>aws-sdk-java-pom</artifactId>
7-
<version>2.3.3</version>
7+
<version>2.3.4</version>
88
<relativePath>../pom.xml</relativePath>
99
</parent>
1010
<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.3.3</version>
24+
<version>2.3.4</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
@@ -7,7 +7,7 @@
77
<parent>
88
<groupId>software.amazon.awssdk</groupId>
99
<artifactId>aws-sdk-java-pom</artifactId>
10-
<version>2.3.3</version>
10+
<version>2.3.4</version>
1111
<relativePath>../pom.xml</relativePath>
1212
</parent>
1313
<artifactId>codegen-lite-maven-plugin</artifactId>

codegen-lite/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<parent>
77
<groupId>software.amazon.awssdk</groupId>
88
<artifactId>aws-sdk-java-pom</artifactId>
9-
<version>2.3.3</version>
9+
<version>2.3.4</version>
1010
</parent>
1111
<artifactId>codegen-lite</artifactId>
1212
<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.3.3</version>
25+
<version>2.3.4</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.3.3</version>
24+
<version>2.3.4</version>
2525
</parent>
2626
<artifactId>codegen</artifactId>
2727
<name>AWS Java SDK :: Code Generator</name>

codegen/src/main/java/software/amazon/awssdk/codegen/AddInputShapes.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ private ShapeModel generateInputShapeModel(Operation operation,
7979
shapeModel.setType(ShapeType.Request.getValue());
8080
shapeModel.setMarshaller(
8181
createInputShapeMarshaller(getServiceModel().getMetadata(), operation));
82+
shapeModel.setEndpointDiscovery(operation.getEndpointDiscovery());
8283

8384
return shapeModel;
8485
}

codegen/src/main/java/software/amazon/awssdk/codegen/AddOperations.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,8 @@ public Map<String, OperationModel> constructOperations() {
158158
operationModel.setDocumentation(op.getDocumentation());
159159
operationModel.setIsAuthenticated(isAuthenticated(op));
160160
operationModel.setPaginated(isPaginated(op));
161+
operationModel.setEndpointOperation(op.isEndpointOperation());
162+
operationModel.setEndpointDiscovery(op.getEndpointDiscovery());
161163
operationModel.setEndpointTrait(op.getEndpoint());
162164

163165
Input input = op.getInput();

codegen/src/main/java/software/amazon/awssdk/codegen/AddShapes.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,7 @@ private MemberModel generateMemberModel(String c2jMemberName, Member c2jMemberDe
177177
memberModel.setIdempotencyToken(c2jMemberDefinition.isIdempotencyToken());
178178
memberModel.setEventPayload(c2jMemberDefinition.isEventPayload());
179179
memberModel.setEventHeader(c2jMemberDefinition.isEventHeader());
180+
memberModel.setEndpointDiscoveryId(c2jMemberDefinition.isEndpointDiscoveryId());
180181

181182
// Pass the xmlNameSpace from the member reference
182183
if (c2jMemberDefinition.getXmlNamespace() != null) {

codegen/src/main/java/software/amazon/awssdk/codegen/IntermediateModelBuilder.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,15 @@ public IntermediateModel build() {
106106
operations.putAll(new AddOperations(this).constructOperations());
107107
authorizers.putAll(new AddCustomAuthorizers(this.service, getNamingStrategy()).constructAuthorizers());
108108

109+
OperationModel endpointOperation = null;
110+
111+
for (OperationModel o : operations.values()) {
112+
if (o.isEndpointOperation()) {
113+
endpointOperation = o;
114+
break;
115+
}
116+
}
117+
109118
for (IntermediateModelShapeProcessor processor : shapeProcessors) {
110119
shapes.putAll(processor.process(Collections.unmodifiableMap(operations),
111120
Collections.unmodifiableMap(shapes)));
@@ -119,7 +128,7 @@ public IntermediateModel build() {
119128

120129
IntermediateModel fullModel = new IntermediateModel(
121130
constructMetadata(service, customConfig), operations, shapes,
122-
customConfig, examples, authorizers, paginators.getPaginators(), namingStrategy);
131+
customConfig, examples, endpointOperation, authorizers, paginators.getPaginators(), namingStrategy);
123132

124133
customization.postprocess(fullModel);
125134

@@ -136,6 +145,7 @@ public IntermediateModel build() {
136145
trimmedShapes,
137146
fullModel.getCustomizationConfig(),
138147
fullModel.getExamples(),
148+
endpointOperation,
139149
fullModel.getCustomAuthorizers(),
140150
fullModel.getPaginators(),
141151
namingStrategy);

codegen/src/main/java/software/amazon/awssdk/codegen/emitters/tasks/AsyncClientGeneratorTasks.java

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,15 @@
1616
package software.amazon.awssdk.codegen.emitters.tasks;
1717

1818
import java.io.IOException;
19-
import java.util.Arrays;
19+
import java.util.ArrayList;
2020
import java.util.List;
2121
import software.amazon.awssdk.codegen.emitters.GeneratorTask;
2222
import software.amazon.awssdk.codegen.emitters.GeneratorTaskParams;
2323
import software.amazon.awssdk.codegen.poet.builder.AsyncClientBuilderClass;
2424
import software.amazon.awssdk.codegen.poet.builder.AsyncClientBuilderInterface;
2525
import software.amazon.awssdk.codegen.poet.client.AsyncClientClass;
2626
import software.amazon.awssdk.codegen.poet.client.AsyncClientInterface;
27+
import software.amazon.awssdk.codegen.poet.endpointdiscovery.EndpointDiscoveryAsyncCacheLoaderGenerator;
2728

2829
public class AsyncClientGeneratorTasks extends BaseGeneratorTasks {
2930

@@ -37,10 +38,16 @@ public AsyncClientGeneratorTasks(GeneratorTaskParams dependencies) {
3738
@Override
3839
protected List<GeneratorTask> createTasks() throws Exception {
3940
info("Emitting Async client classes");
40-
return Arrays.asList(createClientClassTask(),
41-
createClientBuilderTask(),
42-
createClientBuilderInterfaceTask(),
43-
createClientInterfaceTask());
41+
List<GeneratorTask> generatorTasks = new ArrayList<>();
42+
generatorTasks.add(createClientClassTask());
43+
generatorTasks.add(createClientBuilderTask());
44+
generatorTasks.add(createClientBuilderInterfaceTask());
45+
generatorTasks.add(createClientInterfaceTask());
46+
if (model.getEndpointOperation().isPresent()) {
47+
generatorTasks.add(createEndpointDiscoveryCacheLoaderTask());
48+
}
49+
50+
return generatorTasks;
4451
}
4552

4653
private GeneratorTask createClientClassTask() throws IOException {
@@ -58,4 +65,8 @@ private GeneratorTask createClientBuilderInterfaceTask() throws IOException {
5865
private GeneratorTask createClientInterfaceTask() throws IOException {
5966
return createPoetGeneratorTask(new AsyncClientInterface(model));
6067
}
68+
69+
private GeneratorTask createEndpointDiscoveryCacheLoaderTask() throws IOException {
70+
return createPoetGeneratorTask(new EndpointDiscoveryAsyncCacheLoaderGenerator(generatorTaskParams));
71+
}
6172
}

codegen/src/main/java/software/amazon/awssdk/codegen/emitters/tasks/SyncClientGeneratorTasks.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import software.amazon.awssdk.codegen.poet.client.ClientSimpleMethodsIntegrationTests;
2626
import software.amazon.awssdk.codegen.poet.client.SyncClientClass;
2727
import software.amazon.awssdk.codegen.poet.client.SyncClientInterface;
28+
import software.amazon.awssdk.codegen.poet.endpointdiscovery.EndpointDiscoveryCacheLoaderGenerator;
2829

2930
public class SyncClientGeneratorTasks extends BaseGeneratorTasks {
3031
private final GeneratorTaskParams generatorTaskParams;
@@ -50,6 +51,9 @@ protected List<GeneratorTask> createTasks() throws Exception {
5051
if (!model.simpleMethodsRequiringTesting().isEmpty()) {
5152
tasks.add(createClientSimpleMethodsTest());
5253
}
54+
if (model.getEndpointOperation().isPresent()) {
55+
tasks.add(createEndpointDiscoveryCacheLoaderTask());
56+
}
5357
return tasks;
5458
}
5559

@@ -72,4 +76,8 @@ private GeneratorTask createClientBuilderInterfaceTask() throws IOException {
7276
private GeneratorTask createClientSimpleMethodsTest() throws IOException {
7377
return createPoetGeneratorTestTask(new ClientSimpleMethodsIntegrationTests(model));
7478
}
79+
80+
private GeneratorTask createEndpointDiscoveryCacheLoaderTask() throws IOException {
81+
return createPoetGeneratorTask(new EndpointDiscoveryCacheLoaderGenerator(generatorTaskParams));
82+
}
7583
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
* Copyright 2010-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License").
5+
* You may not use this file except in compliance with the License.
6+
* A copy of the License is located at
7+
*
8+
* http://aws.amazon.com/apache2.0
9+
*
10+
* or in the "license" file accompanying this file. This file is distributed
11+
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12+
* express or implied. See the License for the specific language governing
13+
* permissions and limitations under the License.
14+
*/
15+
16+
package software.amazon.awssdk.codegen.model.intermediate;
17+
18+
public class EndpointDiscovery {
19+
20+
private boolean required;
21+
22+
public boolean isRequired() {
23+
return required;
24+
}
25+
26+
public void setRequired(boolean required) {
27+
this.required = required;
28+
}
29+
}

codegen/src/main/java/software/amazon/awssdk/codegen/model/intermediate/IntermediateModel.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import java.util.Collections;
2727
import java.util.List;
2828
import java.util.Map;
29+
import java.util.Optional;
2930
import java.util.stream.Collectors;
3031
import software.amazon.awssdk.awscore.AwsResponse;
3132
import software.amazon.awssdk.awscore.AwsResponseMetadata;
@@ -54,6 +55,9 @@ public final class IntermediateModel {
5455

5556
private final Map<String, AuthorizerModel> customAuthorizers;
5657

58+
@JsonIgnore
59+
private final Optional<OperationModel> endpointOperation;
60+
5761
@JsonIgnore
5862
private final Map<String, PaginatorDefinition> paginators;
5963

@@ -68,7 +72,8 @@ public IntermediateModel(
6872
@JsonProperty("customizationConfig") CustomizationConfig customizationConfig,
6973
@JsonProperty("serviceExamples") ServiceExamples examples) {
7074

71-
this(metadata, operations, shapes, customizationConfig, examples, Collections.emptyMap(), Collections.emptyMap(), null);
75+
this(metadata, operations, shapes, customizationConfig, examples, null,
76+
Collections.emptyMap(), Collections.emptyMap(), null);
7277
}
7378

7479
public IntermediateModel(
@@ -77,6 +82,7 @@ public IntermediateModel(
7782
Map<String, ShapeModel> shapes,
7883
CustomizationConfig customizationConfig,
7984
ServiceExamples examples,
85+
OperationModel endpointOperation,
8086
Map<String, AuthorizerModel> customAuthorizers,
8187
Map<String, PaginatorDefinition> paginators,
8288
NamingStrategy namingStrategy) {
@@ -85,6 +91,7 @@ public IntermediateModel(
8591
this.shapes = shapes;
8692
this.customizationConfig = customizationConfig;
8793
this.examples = examples;
94+
this.endpointOperation = Optional.ofNullable(endpointOperation);
8895
this.customAuthorizers = customAuthorizers;
8996
this.paginators = paginators;
9097
this.namingStrategy = namingStrategy;
@@ -205,6 +212,10 @@ public Map<String, AuthorizerModel> getCustomAuthorizers() {
205212
return customAuthorizers;
206213
}
207214

215+
public Optional<OperationModel> getEndpointOperation() {
216+
return endpointOperation;
217+
}
218+
208219
public boolean hasPaginators() {
209220
return paginators.size() > 0;
210221
}

codegen/src/main/java/software/amazon/awssdk/codegen/model/intermediate/MemberModel.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ public class MemberModel extends DocumentationModel {
8181

8282
private boolean eventHeader;
8383

84+
private boolean endpointDiscoveryId;
85+
8486
public String getName() {
8587
return name;
8688
}
@@ -297,6 +299,15 @@ public void setEventHeader(boolean eventHeader) {
297299
this.eventHeader = eventHeader;
298300
}
299301

302+
303+
public boolean isEndpointDiscoveryId() {
304+
return endpointDiscoveryId;
305+
}
306+
307+
public void setEndpointDiscoveryId(boolean endpointDiscoveryId) {
308+
this.endpointDiscoveryId = endpointDiscoveryId;
309+
}
310+
300311
public ListModel getListModel() {
301312
return listModel;
302313
}

0 commit comments

Comments
 (0)