aws / aws/aws-durable-execution-sdk-java

[Feature]: parse SQSEvent and other trigger event types

Open
#366 4 comments 1 reaction 1 assignee Claimed by @zhongkechen View on GitHub
enhancement
Dominant language
Java
Stars
28
Forks
11
Avg merge
1d 8h
Merged PRs (30d)
47

Description

### Expected Behavior

When a durable function is subscribed to an SQS queue, then the incoming SQS event should directly convert to `SQSEvent` model of [AWS Lambda Java Events library](https://github.com/aws/aws-lambda-java-libs/blob/main/aws-lambda-java-events/README.md).

### Actual Behavior

Durable execution fails with the following error.
```
Cannot invoke \"java.util.List.iterator()\" because the return value of \"com.amazonaws.services.lambda.runtime.events.SQSEvent.getRecords()\" is null
```

### Steps to Reproduce

1. Set up SNS -> SQS -> Durable Lambda (Java)
2. Use `SQSEvent` model of [AWS Lambda Java Events library](https://github.com/aws/aws-lambda-java-libs/blob/main/aws-lambda-java-events/README.md).
```java
public SQSBatchResponse handleRequest(final SQSEvent event, final DurableContext ctx) {

}
```
3. Publish an SNS message.

### SDK Version

1.0.1

### Java Version

17

### Is this a regression?

No

### Last Working Version

_No response_

### Additional Context

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.