Skip to content

Commit d0126d0

Browse files
authored
Merge branch 'master' into master
2 parents aea698d + bd490cb commit d0126d0

45 files changed

Lines changed: 836 additions & 148 deletions

File tree

Some content is hidden

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

.github/workflows/samples.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# This workflow will be triggered if there will be changes to aws-lambda-java-core
2+
# package and it builds the package and the packages that depend on it.
3+
4+
name: Java CI samples
5+
6+
on:
7+
push:
8+
branches: [ master ]
9+
paths:
10+
- 'samples/kinesis-firehose-event-handler/**'
11+
pull_request:
12+
branches: [ '*' ]
13+
paths:
14+
- 'samples/kinesis-firehose-event-handler/**'
15+
16+
jobs:
17+
build:
18+
19+
runs-on: ubuntu-latest
20+
21+
steps:
22+
- uses: actions/checkout@v2
23+
- name: Set up JDK 1.8
24+
uses: actions/setup-java@v1
25+
with:
26+
java-version: 1.8
27+
28+
# Install events module
29+
- name: Install events with Maven
30+
run: mvn -B install --file aws-lambda-java-events/pom.xml
31+
# Install tests module
32+
- name: Install tests with Maven
33+
run: mvn -B install --file aws-lambda-java-tests/pom.xml
34+
35+
# Install samples
36+
- name: Install Kinesis Firehose Sample with Maven
37+
run: mvn -B install --file samples/kinesis-firehose-event-handler/pom.xml

README.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -37,27 +37,27 @@ ___
3737
<dependency>
3838
<groupId>com.amazonaws</groupId>
3939
<artifactId>aws-lambda-java-events</artifactId>
40-
<version>3.9.0</version>
40+
<version>3.11.0</version>
4141
</dependency>
4242
<dependency>
4343
<groupId>com.amazonaws</groupId>
4444
<artifactId>aws-lambda-java-events-sdk-transformer</artifactId>
45-
<version>3.0.4</version>
45+
<version>3.0.7</version>
4646
</dependency>
4747
<dependency>
4848
<groupId>com.amazonaws</groupId>
4949
<artifactId>aws-lambda-java-log4j2</artifactId>
50-
<version>1.2.0</version>
50+
<version>1.5.1</version>
5151
</dependency>
5252
<dependency>
5353
<groupId>com.amazonaws</groupId>
5454
<artifactId>aws-lambda-java-runtime-interface-client</artifactId>
55-
<version>1.1.0</version>
55+
<version>2.0.0</version>
5656
</dependency>
5757
<dependency>
5858
<groupId>com.amazonaws</groupId>
5959
<artifactId>aws-lambda-java-tests</artifactId>
60-
<version>1.0.2</version>
60+
<version>1.1.1</version>
6161
<scope>test</scope>
6262
</dependency>
6363
```
@@ -66,33 +66,33 @@ ___
6666

6767
```groovy
6868
'com.amazonaws:aws-lambda-java-core:1.2.1'
69-
'com.amazonaws:aws-lambda-java-events:3.9.0'
70-
'com.amazonaws:aws-lambda-java-events-sdk-transformer:3.0.4'
71-
'com.amazonaws:aws-lambda-java-log4j2:1.2.0'
72-
'com.amazonaws:aws-lambda-java-runtime-interface-client:1.1.0'
73-
'com.amazonaws:aws-lambda-java-tests:1.0.2'
69+
'com.amazonaws:aws-lambda-java-events:3.11.0'
70+
'com.amazonaws:aws-lambda-java-events-sdk-transformer:3.0.7'
71+
'com.amazonaws:aws-lambda-java-log4j2:1.5.1'
72+
'com.amazonaws:aws-lambda-java-runtime-interface-client:2.0.0'
73+
'com.amazonaws:aws-lambda-java-tests:1.1.1'
7474
```
7575

7676
[Leiningen](http://leiningen.org) and [Boot](http://boot-clj.com)
7777

7878
```clojure
7979
[com.amazonaws/aws-lambda-java-core "1.2.1"]
80-
[com.amazonaws/aws-lambda-java-events "3.9.0"]
81-
[com.amazonaws/aws-lambda-java-events-sdk-transformer "3.0.4"]
82-
[com.amazonaws/aws-lambda-java-log4j2 "1.2.0"]
83-
[com.amazonaws/aws-lambda-java-runtime-interface-client "1.1.0"]
84-
[com.amazonaws/aws-lambda-java-tests "1.0.2"]
80+
[com.amazonaws/aws-lambda-java-events "3.11.0"]
81+
[com.amazonaws/aws-lambda-java-events-sdk-transformer "3.0.7"]
82+
[com.amazonaws/aws-lambda-java-log4j2 "1.5.1"]
83+
[com.amazonaws/aws-lambda-java-runtime-interface-client "2.0.0"]
84+
[com.amazonaws/aws-lambda-java-tests "1.1.1"]
8585
```
8686

8787
[sbt](http://www.scala-sbt.org)
8888

8989
```scala
9090
"com.amazonaws" % "aws-lambda-java-core" % "1.2.1"
91-
"com.amazonaws" % "aws-lambda-java-events" % "3.9.0"
92-
"com.amazonaws" % "aws-lambda-java-events-sdk-transformer" % "3.0.4"
93-
"com.amazonaws" % "aws-lambda-java-log4j2" % "1.2.0"
94-
"com.amazonaws" % "aws-lambda-java-runtime-interface-client" % "1.1.0"
95-
"com.amazonaws" % "aws-lambda-java-tests" % "1.0.2"
91+
"com.amazonaws" % "aws-lambda-java-events" % "3.11.0"
92+
"com.amazonaws" % "aws-lambda-java-events-sdk-transformer" % "3.0.7"
93+
"com.amazonaws" % "aws-lambda-java-log4j2" % "1.5.1"
94+
"com.amazonaws" % "aws-lambda-java-runtime-interface-client" % "2.0.0"
95+
"com.amazonaws" % "aws-lambda-java-tests" % "1.1.1"
9696
```
9797

9898
# Using aws-lambda-java-core

aws-lambda-java-events-sdk-transformer/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ Add the following Apache Maven dependencies to your `pom.xml` file:
1616
<dependency>
1717
<groupId>com.amazonaws</groupId>
1818
<artifactId>aws-lambda-java-events-sdk-transformer</artifactId>
19-
<version>3.0.4</version>
19+
<version>3.0.7</version>
2020
</dependency>
2121
<dependency>
2222
<groupId>com.amazonaws</groupId>
2323
<artifactId>aws-lambda-java-events</artifactId>
24-
<version>3.9.0</version>
24+
<version>3.11.0</version>
2525
</dependency>
2626
</dependencies>
2727
```

aws-lambda-java-events-sdk-transformer/RELEASE.CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
### November 24, 2021
2+
`3.0.7`:
3+
- Bumped `aws-lambda-java-events` to version `3.11.0`
4+
5+
### September 02, 2021
6+
`3.0.6`:
7+
- Fixed NPE when UserIdentity, OldImage, or NewImage is null ([#264](https://github.com/aws/aws-lambda-java-libs/pull/264))
8+
9+
### August 26, 2021
10+
`3.0.5`:
11+
- Bumped `aws-lambda-java-events` to version `3.10.0`
12+
113
### June 2, 2021
214
`3.0.4`:
315
- Bumped `aws-lambda-java-events` to version `3.9.0`

aws-lambda-java-events-sdk-transformer/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.amazonaws</groupId>
77
<artifactId>aws-lambda-java-events-sdk-transformer</artifactId>
8-
<version>3.0.4</version>
8+
<version>3.0.7</version>
99
<packaging>jar</packaging>
1010

1111
<name>AWS Lambda Java Events SDK Transformer Library</name>
@@ -63,7 +63,7 @@
6363
<dependency>
6464
<groupId>com.amazonaws</groupId>
6565
<artifactId>aws-lambda-java-events</artifactId>
66-
<version>3.9.0</version>
66+
<version>3.11.0</version>
6767
<scope>provided</scope>
6868
</dependency>
6969

aws-lambda-java-events-sdk-transformer/src/main/java/com/amazonaws/services/lambda/runtime/events/transformers/v1/dynamodb/DynamodbRecordTransformer.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ public static Record toRecordV1(final DynamodbEvent.DynamodbStreamRecord record)
1616
.withEventSource(record.getEventSource())
1717
.withEventVersion(record.getEventVersion())
1818
.withUserIdentity(
19-
DynamodbIdentityTransformer.toIdentityV1(record.getUserIdentity())
19+
record.getUserIdentity() != null
20+
? DynamodbIdentityTransformer.toIdentityV1(record.getUserIdentity())
21+
: null
2022
);
2123
}
2224
}

aws-lambda-java-events-sdk-transformer/src/main/java/com/amazonaws/services/lambda/runtime/events/transformers/v1/dynamodb/DynamodbStreamRecordTransformer.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,14 @@ public static StreamRecord toStreamRecordV1(final com.amazonaws.services.lambda.
1313
DynamodbAttributeValueTransformer.toAttributeValueMapV1(streamRecord.getKeys())
1414
)
1515
.withNewImage(
16-
DynamodbAttributeValueTransformer.toAttributeValueMapV1(streamRecord.getNewImage())
16+
streamRecord.getNewImage() != null
17+
? DynamodbAttributeValueTransformer.toAttributeValueMapV1(streamRecord.getNewImage())
18+
: null
1719
)
1820
.withOldImage(
19-
DynamodbAttributeValueTransformer.toAttributeValueMapV1(streamRecord.getOldImage())
21+
streamRecord.getOldImage() != null
22+
? DynamodbAttributeValueTransformer.toAttributeValueMapV1(streamRecord.getOldImage())
23+
: null
2024
)
2125
.withSequenceNumber(streamRecord.getSequenceNumber())
2226
.withSizeBytes(streamRecord.getSizeBytes())

aws-lambda-java-events-sdk-transformer/src/test/java/com/amazonaws/services/lambda/runtime/events/transformers/v1/dynamodb/DynamodbRecordTransformerTest.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.amazonaws.services.dynamodbv2.model.OperationType;
44
import com.amazonaws.services.dynamodbv2.model.Record;
55
import com.amazonaws.services.lambda.runtime.events.DynamodbEvent;
6+
import com.amazonaws.services.lambda.runtime.events.transformers.v1.DynamodbEventTransformer;
67
import org.junit.jupiter.api.Assertions;
78
import org.junit.jupiter.api.Test;
89

@@ -49,4 +50,14 @@ public void testToRecordV1() {
4950
Assertions.assertEquals(record_v1, convertedRecord);
5051
}
5152

53+
@Test
54+
public void testToRecordV1WhenUserIdentityIsNull() {
55+
DynamodbEvent.DynamodbStreamRecord record = record_event.clone();
56+
record.setUserIdentity(null);
57+
58+
Assertions.assertDoesNotThrow(() -> {
59+
com.amazonaws.services.lambda.runtime.events.transformers.v1.dynamodb.DynamodbRecordTransformer.toRecordV1(record);
60+
});
61+
}
62+
5263
}

aws-lambda-java-events-sdk-transformer/src/test/java/com/amazonaws/services/lambda/runtime/events/transformers/v1/dynamodb/DynamodbStreamRecordTransformerTest.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,4 +127,24 @@ public void testToStreamRecordV1() {
127127
StreamRecord convertedStreamRecord = DynamodbStreamRecordTransformer.toStreamRecordV1(streamRecord_event);
128128
Assertions.assertEquals(streamRecord_v1, convertedStreamRecord);
129129
}
130+
131+
@Test
132+
public void testToStreamRecordV1WhenOldImageIsNull() {
133+
com.amazonaws.services.lambda.runtime.events.models.dynamodb.StreamRecord streamRecord = streamRecord_event.clone();
134+
streamRecord.setOldImage(null);
135+
136+
Assertions.assertDoesNotThrow(() -> {
137+
com.amazonaws.services.lambda.runtime.events.transformers.v1.dynamodb.DynamodbStreamRecordTransformer.toStreamRecordV1(streamRecord);
138+
});
139+
}
140+
141+
@Test
142+
public void testToStreamRecordV1WhenNewImageIsNull() {
143+
com.amazonaws.services.lambda.runtime.events.models.dynamodb.StreamRecord streamRecord = streamRecord_event.clone();
144+
streamRecord.setNewImage(null);
145+
146+
Assertions.assertDoesNotThrow(() -> {
147+
com.amazonaws.services.lambda.runtime.events.transformers.v1.dynamodb.DynamodbStreamRecordTransformer.toStreamRecordV1(streamRecord);
148+
});
149+
}
130150
}

aws-lambda-java-events/README.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
* `APIGatewayV2WebSocketResponse`
1313
* `ApplicationLoadBalancerRequestEvent`
1414
* `ApplicationLoadBalancerResponseEvent`
15+
* `AppSyncLambdaAuthorizerEvent`
16+
* `AppSyncLambdaAuthorizerResponse`
1517
* `CloudFormationCustomResourceEvent`
1618
* `CloudFrontEvent`
1719
* `CloudWatchLogsEvent`
@@ -42,13 +44,15 @@
4244
* `KinesisFirehoseEvent`
4345
* `LambdaDestinationEvent`
4446
* `LexEvent`
47+
* `RabbitMQEvent`
4548
* `S3BatchEvent`
4649
* `S3BatchResponse`
4750
* `S3Event`
4851
* `ScheduledEvent`
4952
* `SecretsManagerRotationEvent`
5053
* `SimpleIAMPolicyResponse`
5154
* `SNSEvent`
55+
* `SQSBatchResponse`
5256
* `SQSEvent`
5357

5458
*As of version `3.0.0`, users are no longer required to pull in SDK dependencies in order to use this library.*
@@ -69,7 +73,7 @@
6973
<dependency>
7074
<groupId>com.amazonaws</groupId>
7175
<artifactId>aws-lambda-java-events</artifactId>
72-
<version>3.9.0</version>
76+
<version>3.11.0</version>
7377
</dependency>
7478
...
7579
</dependencies>
@@ -79,19 +83,19 @@
7983

8084
```groovy
8185
'com.amazonaws:aws-lambda-java-core:1.2.1'
82-
'com.amazonaws:aws-lambda-java-events:3.9.0'
86+
'com.amazonaws:aws-lambda-java-events:3.11.0'
8387
```
8488

8589
[Leiningen](http://leiningen.org) and [Boot](http://boot-clj.com)
8690

8791
```clojure
8892
[com.amazonaws/aws-lambda-java-core "1.2.1"]
89-
[com.amazonaws/aws-lambda-java-events "3.9.0"]
93+
[com.amazonaws/aws-lambda-java-events "3.11.0"]
9094
```
9195

9296
[sbt](http://www.scala-sbt.org)
9397

9498
```scala
9599
"com.amazonaws" % "aws-lambda-java-core" % "1.2.1"
96-
"com.amazonaws" % "aws-lambda-java-events" % "3.9.0"
100+
"com.amazonaws" % "aws-lambda-java-events" % "3.11.0"
97101
```

0 commit comments

Comments
 (0)