package workflow

type (
	BusinessType   string
	BusinessAction string
)

const (
	ClusterID         = "cluster_id"
	BusinessTypeKey   = "business_type"
	BusinessActionKey = "business_action"
	BusinessID        = "business_id"

	BusinessTypeBizChangefeed         BusinessType   = "biz_changefeed"
	BusinessActionCreateBizChangefeed BusinessAction = "create_biz_changefeed"
	BusinessActionScaleBizChangefeed  BusinessAction = "scale_biz_changefeed"
	BusinessActionDeleteBizChangefeed BusinessAction = "delete_biz_changefeed"
	BusinessTypeDataPipeline          BusinessType   = "data_pipeline"
	BusinessActionCreateDataPipeline  BusinessAction = "create_data_pipeline"
	BusinessActionPauseDataPipeline   BusinessAction = "pause_data_pipeline"
	BusinessActionEditDataPipeline    BusinessAction = "edit_data_pipeline"
	BusinessActionResumeDataPipeline  BusinessAction = "resume_data_pipeline"
	BusinessActionDeleteDataPipeline  BusinessAction = "delete_data_pipeline"
)

// ActionName dag action name
const (
	// action for biz_changefeed
	ActionBizChangefeedCreateOrScaleTiCDCCluster  = "biz_changefeed_create_or_scale_ticdc_cluster"
	ActionBizChangefeedCreateChangefeed           = "biz_changefeed_create_changefeed"
	ActionBizChangefeedCreateFinalStep            = "biz_changefeed_create_final_step"
	ActionBizChangefeedScaleTiCDCCluster          = "biz_changefeed_scale_ticdc_cluster"
	ActionBizChangefeedScaleFinalStep             = "biz_changefeed_scale_final_step"
	ActionBizChangefeedCancelUnfinishedDagIns     = "biz_changefeed_delete_cancel_unfinished_dag_ins"
	ActionBizChangefeedDeleteChangefeed           = "biz_changefeed_delete_changefeed"
	ActionBizChangefeedDeleteOrScaleTiCDCCluster  = "biz_changefeed_delete_or_scale_ticdc_cluster"
	ActionBizChangefeedDeleteDeregisterClusterJob = "biz_changefeed_delete_deregister_cluster_job"
	ActionBizChangefeedDeleteFinalStep            = "biz_changefeed_delete_final_step"

	ActionDataPipelineCreateExport      = "data_pipeline_create_export"
	ActionDataPipelineCreateChangefeed  = "data_pipeline_create_changefeed"
	ActionDataPipelineWaitSnapshot      = "data_pipeline_wait_snapshot"
	ActionDataPipelineCreateDestination = "data_pipeline_create_destination"
	ActionDataPipelineStartDestination  = "data_pipeline_start_destination"
	ActionDataPipelineFinishCreate      = "data_pipeline_finish_create"
	ActionDataPipelinePauseChangefeed   = "data_pipeline_pause_changefeed"
	ActionDataPipelineStopDestination   = "data_pipeline_stop_destination"
	ActionDataPipelineFinishPause       = "data_pipeline_finish_pause"
	ActionDataPipelineApplyChangefeed   = "data_pipeline_apply_changefeed"
	ActionDataPipelineApplyDestination  = "data_pipeline_apply_destination"
	ActionDataPipelineFinishEdit        = "data_pipeline_finish_edit"
	ActionDataPipelineResumeDestination = "data_pipeline_resume_destination"
	ActionDataPipelineResumeChangefeed  = "data_pipeline_resume_changefeed"
	ActionDataPipelineFinishResume      = "data_pipeline_finish_resume"
	ActionDataPipelineDeleteDestination = "data_pipeline_delete_destination"
	ActionDataPipelineDeleteChangefeed  = "data_pipeline_delete_changefeed"
	ActionDataPipelineDeleteExport      = "data_pipeline_delete_export"
	ActionDataPipelineFinishDelete      = "data_pipeline_finish_delete"
)

// DagName dag name
const (
	DagCreateBizChangefeed = "create_biz_changefeed_v1.0"
	DagScaleBizChangefeed  = "scale_biz_changefeed_v1.0"
	DagDeleteBizChangefeed = "delete_biz_changefeed_v1.0"
	DagCreateDataPipeline  = "create_data_pipeline_v1.0"
	DagPauseDataPipeline   = "pause_data_pipeline_v1.0"
	DagEditDataPipeline    = "edit_data_pipeline_v1.0"
	DagResumeDataPipeline  = "resume_data_pipeline_v1.0"
	DagDeleteDataPipeline  = "delete_data_pipeline_v1.0"
)

// biz_changefeed dag vars key
const KeyBizChangefeedID = "biz_changefeed_id"

const KeyDataPipelineID = "data_pipeline_id"
