# -*- coding: utf-8 -*-
"""
Lambda-related classes and functions
"""

from ScoutSuite.providers.aws.configs.regions import RegionalServiceConfig, RegionConfig, api_clients



########################################
# LambdaRegionConfig
########################################

class LambdaRegionConfig(RegionConfig):

    def parse_function(self, global_params, region, function):
        function['name'] = function.pop('FunctionName')
        self.functions[function['name']] = function



########################################
# LambdaConfig
########################################

class LambdaConfig(RegionalServiceConfig):
    """
    Lambda configuration for all AWS regions
    """

    region_config_class = LambdaRegionConfig

    def __init__(self, service_metadata, thread_config = 4):
        super(LambdaConfig, self).__init__(service_metadata, thread_config)
