Skip to content

Commit 03a98a2

Browse files
feat(event_source): export SQSRecord in data_classes module (#6639)
* export SQSRecord in data_classes module (fixes #6637) * update SQS documentation to show proper typing with SQSRecord --------- Co-authored-by: Leandro Damascena <[email protected]>
1 parent d00c6a1 commit 03a98a2

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

aws_lambda_powertools/utilities/data_classes/__init__.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
from .secrets_manager_event import SecretsManagerEvent
4747
from .ses_event import SESEvent
4848
from .sns_event import SNSEvent
49-
from .sqs_event import SQSEvent
49+
from .sqs_event import SQSEvent, SQSRecord
5050
from .transfer_family_event import TransferFamilyAuthorizer, TransferFamilyAuthorizerResponse
5151
from .vpc_lattice import VPCLatticeEvent, VPCLatticeEventV2
5252

@@ -87,6 +87,7 @@
8787
"SESEvent",
8888
"SNSEvent",
8989
"SQSEvent",
90+
"SQSRecord",
9091
"event_source",
9192
"AWSConfigRuleEvent",
9293
"VPCLatticeEvent",
+8-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,18 @@
1-
from aws_lambda_powertools.utilities.data_classes import SQSEvent, event_source
1+
from aws_lambda_powertools.utilities.data_classes import SQSEvent, SQSRecord, event_source
22

33

44
@event_source(data_class=SQSEvent)
55
def lambda_handler(event: SQSEvent, context):
66
# Multiple records can be delivered in a single event
77
for record in event.records:
8-
message = record.body
9-
message_id = record.message_id
8+
message, message_id = process_record(record)
109
return {
1110
"message": message,
1211
"message_id": message_id,
1312
}
13+
14+
15+
def process_record(record: SQSRecord):
16+
message = record.body
17+
message_id = record.message_id
18+
return message, message_id

0 commit comments

Comments
 (0)