# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 from aws_lambda_powertools.utilities.data_classes import APIGatewayProxyEvent from aws_lambda_powertools.utilities.typing import LambdaContext from delegated_admins.delegated_admins_repository import DelegatedAdminsRepository from utils.api_gateway_lambda_handler import GenericApiGatewayEventHandler, ApiGatewayResponse, ResultListWrapper from aws_lambda_powertools import Tracer tracer = Tracer() @tracer.capture_lambda_handler def lambda_handler(event: dict, context: LambdaContext) -> ApiGatewayResponse: return GenericApiGatewayEventHandler().handle_and_create_response( event, context, ReadDelegatedAdmins().read_delegated_admins ) class ReadDelegatedAdmins: def read_delegated_admins(self, _event: APIGatewayProxyEvent, _context: LambdaContext) -> ResultListWrapper: repository = DelegatedAdminsRepository() return { 'Results': repository.find_all_delegated_admins() }