"""
Module contains request class for handlers lambda
"""
from typing import final
from luna_lambda_tools.private.request import BaseHandlersRequest
from luna_lambda_tools.public.handlers.schemas import EventSourceSchema
[docs]
@final
class HandlersLambdaRequest(BaseHandlersRequest):
"""Handlers lambda request"""
[docs]
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
@property
def data(self) -> EventSourceSchema:
"""Get events sources from request"""
return super().getRequestData(EventSourceSchema)
@property
def handlerId(self) -> str | None:
"""Request initiator handler id"""
if handlerId := self.headers.get("Luna-Handler-Id"):
return handlerId