class_docstr: Executes a Synapse Pipeline.
  
  :param pipeline_name: The name of the pipeline to execute.
  :param azure_synapse_conn_id: The Airflow connection ID for Azure Synapse.
  :param azure_synapse_workspace_dev_endpoint: The Azure Synapse workspace development endpoint.
  :param wait_for_termination: Flag to wait on a pipeline run's termination.
  :param reference_pipeline_run_id: The pipeline run identifier. If this run ID is specified the parameters
      of the specified run will be used to create a new run.
  :param is_recovery: Recovery mode flag. If recovery mode is set to `True`, the specified referenced
      pipeline run and the new run will be grouped under the same ``groupId``.
  :param start_activity_name: In recovery mode, the rerun will start from this activity. If not specified,
      all activities will run.
  :param parameters: Parameters of the pipeline run. These parameters are referenced in a pipeline via
      ``@pipeline().parameters.parameterName`` and will be used only if the ``reference_pipeline_run_id`` is
      not specified.
  :param timeout: Time in seconds to wait for a pipeline to reach a terminal status for non-asynchronous
      waits. Used only if ``wait_for_termination`` is True.
  :param check_interval: Time in seconds to check on a pipeline run's status for non-asynchronous waits.
      Used only if ``wait_for_termination`` is True.
code: def __init__(
      self,
      pipeline_name: str,
      azure_synapse_conn_id: str,
      azure_synapse_workspace_dev_endpoint: str,
      wait_for_termination: bool = True,
      reference_pipeline_run_id: str | None = None,
      is_recovery: bool | None = None,
      start_activity_name: str | None = None,
      parameters: dict[str, Any] | None = None,
      timeout: int = 60 * 60 * 24 * 7,
      check_interval: int = 60,
      **kwargs,
  ) -> None:
      super().__init__(**kwargs)
      self.azure_synapse_conn_id = azure_synapse_conn_id
      self.pipeline_name = pipeline_name
      self.azure_synapse_workspace_dev_endpoint = (
          azure_synapse_workspace_dev_endpoint
      )
      self.wait_for_termination = wait_for_termination
      self.reference_pipeline_run_id = reference_pipeline_run_id
      self.is_recovery = is_recovery
      self.start_activity_name = start_activity_name
      self.parameters = parameters
      self.timeout = timeout
      self.check_interval = check_interval
  
imports: from __future__ import annotations
  from functools import cached_property
  from typing import TYPE_CHECKING, Any, Sequence
  from urllib.parse import urlencode
  from airflow.exceptions import AirflowException
  from airflow.hooks.base import BaseHook
  from airflow.models import BaseOperator, BaseOperatorLink, XCom
  from airflow.providers.microsoft.azure.hooks.synapse import AzureSynapseHook, AzureSynapsePipelineHook, AzureSynapsePipelineRunException, AzureSynapsePipelineRunStatus, AzureSynapseSparkBatchRunStatus
label_desc: Use image node_id 1 to create a new AzureSynapseRunPipelineOperator object from inherited base classes: BaseOperator with example: obj = AzureSynapseRunPipelineOperator(pipeline_name, azure_synapse_conn_id, azure_synapse_workspace_dev_endpoint, wait_for_termination, reference_pipeline_run_id, is_recovery, start_activity_name, parameters, timeout, check_interval)