def _apply_mappings()

in athena_glue_service_logs/alb.py [0:0]


    def _apply_mappings(self, dynamic_frame):
        LOGGER.info("Performing alb custom conversion action: type conversions")

        raw_columns = ALBRawCatalog._columns()
        opt_columns = ALBConvertedCatalog._columns()

        # Build our big list of mappings
        mappings = [
            mapping[0] + mapping[1] for mapping in zip(
                [(f['Name'], f['Type']) for f in raw_columns],
                [(f['Name'], f['Type']) for f in opt_columns]
            )
        ]

        # Include region and date mapping as Glue does not include partitions in original DynamicFrame
        region_mapping = [
            ('region', 'string', 'region', 'string'),
            ('year', 'string', 'year', 'string'),
            ('month', 'string', 'month', 'string'),
            ('day', 'string', 'day', 'string')
        ]

        return dynamic_frame.apply_mapping(mappings + region_mapping)