def to_cloudformation()

in samtranslator/model/sam_resources.py [0:0]


    def to_cloudformation(self, **kwargs: Any) -> List[Resource]:
        model = self.validate_properties_and_return_model(aws_serverless_graphqlapi.Properties)

        appsync_api, cloudwatch_role, auth_connectors = self._construct_appsync_api_resources(model)
        api_id = appsync_api.get_runtime_attr("api_id")
        appsync_schema = self._construct_appsync_schema(model, api_id)

        resources: List[Resource] = [appsync_api, appsync_schema]

        for connector in auth_connectors:
            resources.extend(connector.to_cloudformation(**kwargs))

        if cloudwatch_role:
            resources.append(cloudwatch_role)

        if model.ApiKeys:
            api_keys = self._construct_appsync_api_keys(model.ApiKeys, api_id)
            resources.extend(api_keys)

        if model.Cache:
            api_cache = self._construct_appsync_api_cache(model.Cache, api_id)
            resources.append(api_cache)

        if model.DataSources:
            datasource_resources = self._construct_datasource_resources(model.DataSources, api_id, kwargs)
            resources.extend(datasource_resources)

        if model.DomainName:
            domain_name_resources = self._construct_domain_name_resources(model.DomainName, api_id)
            resources.extend(domain_name_resources)

        if model.Functions:
            function_configurations = self._construct_appsync_function_configurations(model.Functions, api_id)
            resources.extend(function_configurations)

        if model.Resolvers:
            appsync_resolver_resources = self._construct_appsync_resolver_resources(
                model.Resolvers, api_id, appsync_schema.logical_id
            )
            resources.extend(appsync_resolver_resources)

        if self._none_datasource:
            resources.append(self._none_datasource)

        return resources