def generate_wait_for_delete_method()

in src/sagemaker_core/tools/resources_codegen.py [0:0]


    def generate_wait_for_delete_method(self, resource_name: str) -> str:
        """Auto-Generate WAIT_FOR_DELETE Method for a resource with deleting status.

        Args:
            resource_name (str): The resource name.

        Returns:
            str: The formatted wait_for_delete Method template.
        """
        resource_status_chain, resource_states = (
            self.resources_extractor.get_status_chain_and_states(resource_name)
        )

        # Get resource status key path
        status_key_path = ""
        for member in resource_status_chain:
            status_key_path += f'.{convert_to_snake_case(member["name"])}'

        formatted_failed_block = ""
        if any("delete_failed" in state.lower() for state in resource_states):
            failure_reason = self._get_failure_reason_ref(resource_name)
            formatted_failed_block = DELETE_FAILED_STATUS_CHECK.format(
                resource_name=resource_name, reason=failure_reason
            )
            formatted_failed_block = add_indent(formatted_failed_block, 16)

        if any(state.lower() == "deleted" for state in resource_states):
            deleted_status_check = add_indent(DELETED_STATUS_CHECK, 16)
        else:
            deleted_status_check = ""

        formatted_method = WAIT_FOR_DELETE_METHOD_TEMPLATE.format(
            resource_states=resource_states,
            status_key_path=status_key_path,
            delete_failed_error_block=formatted_failed_block,
            deleted_status_check=deleted_status_check,
            resource_name=resource_name,
        )
        return formatted_method