def __init__()

in Gems/AWSGameLift/cdk/aws_gamelift/gamelift_stack.py [0:0]


    def __init__(self, scope: Construct, id_: str,
                 stack_name: str, fleet_configurations: dict,
                 create_game_session_queue: bool,
                 flex_match: bool,
                 **kwargs) -> None:
        super().__init__(scope, id_, **kwargs)

        self._stack_name = stack_name

        fleet_ids = []
        queue_destinations = []
        for index in range(len(fleet_configurations)):
            fleet_configuration = fleet_configurations[index]
            # Create a new GameLift fleet using the configuration
            fleet_ids.append(self._create_fleet(fleet_configuration, index).attr_fleet_id)
            destination_arn = Fn.sub(
                body='arn:${AWS::Partition}:gamelift:${AWS::Region}::fleet/${FleetId}',
                variables={
                    'FleetId': fleet_ids[index],
                }
            )

            if fleet_configuration.get('alias_configuration'):
                # Create an alias for the fleet if the alias configuration is provided
                alias = self._create_alias(fleet_configuration['alias_configuration'], fleet_ids[index])
                destination_arn = Fn.sub(
                    body='arn:${AWS::Partition}:gamelift:${AWS::Region}::alias/${AliasId}',
                    variables={
                        'AliasId': alias.attr_alias_id,
                    }
                )

            queue_destinations.append(destination_arn)

        # Export the GameLift fleet ids as a stack output
        CfnOutput(
            self,
            id='GameLiftFleets',
            description='List of GameLift fleet ids',
            export_name=f'{self._stack_name}:GameLiftFleets',
            value=','.join(fleet_ids)
        )

        game_session_queue_arns = []
        if flex_match or create_game_session_queue:
            queue = game_session_queue.GameSessionQueueResources(self, queue_destinations)
            game_session_queue_arns.append(queue.game_session_queue_arn)

        if flex_match:
            matchmaking.MatchmakingResources(self, game_session_queue_arns)