Skip to content

Commit 07e1881

Browse files
Fix ContactFlowEvent to use Queue, update mixins and serializers
1 parent 311d284 commit 07e1881

File tree

8 files changed

+22
-9
lines changed

8 files changed

+22
-9
lines changed

aws-lambda-java-events/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.amazonaws</groupId>
77
<artifactId>aws-lambda-java-events</artifactId>
8-
<version>3.16.0</version>
8+
<version>3.16.1</version>
99
<packaging>jar</packaging>
1010

1111
<name>AWS Lambda Java Events Library</name>

aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/ConnectEvent.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public static class CustomerEndpoint implements Serializable, Cloneable {
7878
@AllArgsConstructor
7979
public static class Queue implements Serializable, Cloneable {
8080
private String name;
81-
private String arn;
81+
private String ARN;
8282
}
8383

8484
@Data

aws-lambda-java-serialization/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
<groupId>com.amazonaws</groupId>
66
<artifactId>aws-lambda-java-serialization</artifactId>
7-
<version>1.1.5</version>
7+
<version>1.1.6</version>
88
<packaging>jar</packaging>
99

1010
<name>AWS Lambda Java Runtime Serialization</name>

aws-lambda-java-serialization/src/main/java/com/amazonaws/services/lambda/runtime/serialization/events/LambdaEventSerializers.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,8 @@ public class LambdaEventSerializers {
120120
ConnectEventMixin.CustomerEndpointMixin.class),
121121
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.ConnectEvent$SystemEndpoint",
122122
ConnectEventMixin.SystemEndpointMixin.class),
123+
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.ConnectEvent$Queue",
124+
ConnectEventMixin.QueueMixin.class),
123125
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.DynamodbEvent",
124126
DynamodbEventMixin.class),
125127
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.DynamodbEvent$DynamodbStreamRecord",
@@ -170,6 +172,7 @@ public class LambdaEventSerializers {
170172
new NestedClass("com.amazonaws.services.lambda.runtime.events.ConnectEvent$Details"),
171173
new NestedClass("com.amazonaws.services.lambda.runtime.events.ConnectEvent$ContactData"),
172174
new NestedClass("com.amazonaws.services.lambda.runtime.events.ConnectEvent$CustomerEndpoint"),
175+
new NestedClass("com.amazonaws.services.lambda.runtime.events.ConnectEvent$Queue"),
173176
new NestedClass("com.amazonaws.services.lambda.runtime.events.ConnectEvent$SystemEndpoint"))),
174177
new SimpleEntry<>("com.amazonaws.services.lambda.runtime.events.DynamodbEvent",
175178
Arrays.asList(

aws-lambda-java-serialization/src/main/java/com/amazonaws/services/lambda/runtime/serialization/events/mixins/ConnectEventMixin.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,8 @@ public abstract class ContactDataMixin {
6565
@JsonProperty("PreviousContactId") abstract void setPreviousContactId(String previousContactId);
6666

6767
// needed because Jackson expects "queue" instead of "Queue"
68-
@JsonProperty("Queue") abstract String getQueue();
69-
@JsonProperty("Queue") abstract void setQueue(String queue);
68+
@JsonProperty("Queue") abstract Map<String, String> getQueue();
69+
@JsonProperty("Queue") abstract void setQueue(Map<String, String> queue);
7070

7171
// needed because Jackson expects "systemEndpoint" instead of "SystemEndpoint"
7272
@JsonProperty("SystemEndpoint") abstract Map<String,String> getSystemEndpoint();
@@ -95,4 +95,12 @@ public abstract class SystemEndpointMixin {
9595
@JsonProperty("Type") abstract String getType();
9696
@JsonProperty("Type") abstract void setType(String type);
9797
}
98+
99+
public abstract class QueueMixin {
100+
@JsonProperty("Name") abstract String getName();
101+
@JsonProperty("Name") abstract void setName(String name);
102+
103+
@JsonProperty("ARN") abstract String getARN();
104+
@JsonProperty("ARN") abstract void setARN(String arn);
105+
}
98106
}

aws-lambda-java-tests/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
<dependency>
4646
<groupId>com.amazonaws</groupId>
4747
<artifactId>aws-lambda-java-events</artifactId>
48-
<version>3.16.0</version>
48+
<version>3.16.1</version>
4949
</dependency>
5050
<dependency>
5151
<groupId>org.junit.jupiter</groupId>

aws-lambda-java-tests/src/test/java/com/amazonaws/services/lambda/runtime/tests/EventLoaderTest.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,8 @@ public void testLoadScheduledEvent() {
315315
@Test
316316
public void testLoadConnectEvent() {
317317
ConnectEvent event = EventLoader.loadConnectEvent("connect_event.json");
318-
assertThat(event).isNotNull();
318+
assertThat(event).isNotNull()
319+
.returns("ContactFlowEvent", from(ConnectEvent::getName));
319320

320321
ConnectEvent.ContactData contactData = event.getDetails().getContactData();
321322
assertThat(contactData)
@@ -335,7 +336,8 @@ public void testLoadConnectEvent() {
335336
.returns("TELEPHONE_NUMBER",from(ConnectEvent.SystemEndpoint::getType));
336337

337338
assertThat(contactData.getQueue())
338-
.returns("arn:aws:connect:eu-central-1:123456789012:instance/9308c2a1-9bc6-4cea-8290-6c0b4a6d38fa/queue/941464de-39b7-4cae-82e9-a44f070ef59e", from(ConnectEvent.Queue::getArn))
339+
.isNotNull()
340+
.returns("arn:aws:connect:eu-central-1:123456789012:instance/9308c2a1-9bc6-4cea-8290-6c0b4a6d38fa/queue/941464de-39b7-4cae-82e9-a44f070ef59e", from(ConnectEvent.Queue::getARN))
339341
.returns("ExampleQueue",from(ConnectEvent.Queue::getName));
340342
}
341343

aws-lambda-java-tests/src/test/resources/connect_event.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"PreviousContactId": "4ca32fbd-8f92-46af-92a5-6b0f970f0efe",
2525
"Queue": {
2626
"ARN": "arn:aws:connect:eu-central-1:123456789012:instance/9308c2a1-9bc6-4cea-8290-6c0b4a6d38fa/queue/941464de-39b7-4cae-82e9-a44f070ef59e",
27-
"Name": "PasswordReset"
27+
"Name": "ExampleQueue"
2828
},
2929
"SystemEndpoint": {
3030
"Address": "+21234567890",

0 commit comments

Comments
 (0)