in client/migrationx/migrationx-transformer/src/main/java/com/aliyun/dataworks/migrationx/transformer/dataworks/converter/dolphinscheduler/v3/nodes/TaskConverterFactoryV3.java [47:101]
public static AbstractParameterConverter create(
DagData processMeta, TaskDefinition taskDefinition, DolphinSchedulerConverterContext converterContext) throws Throwable {
TransformerContext.getCollector().incrementType(taskDefinition.getTaskType());
if (Config.get().getTempTaskTypes().contains(taskDefinition.getTaskType())) {
return new CustomParameterConverter(processMeta, taskDefinition, converterContext);
}
TaskType taskType;
try {
taskType = TaskType.of(taskDefinition.getTaskType());
} catch (Exception e) {
markUnSupportedTask(processMeta.getProcessDefinition(), taskDefinition);
throw new UnSupportedTypeException(taskDefinition.getTaskType());
}
switch (taskType) {
case PROCEDURE:
return new ProcedureParameterConverter(processMeta, taskDefinition, converterContext);
case SQL:
return new SqlParameterConverter(processMeta, taskDefinition, converterContext);
case PYTHON:
return new PythonParameterConverter(processMeta, taskDefinition, converterContext);
case CONDITIONS:
return new ConditionsParameterConverter(processMeta, taskDefinition, converterContext);
case SUB_PROCESS:
return new SubProcessParameterConverter(processMeta, taskDefinition, converterContext);
case DEPENDENT:
return new DependentParameterConverter(processMeta, taskDefinition, converterContext);
case SHELL:
return new ShellParameterConverter(processMeta, taskDefinition, converterContext);
case SWITCH:
return new SwitchParameterConverter(processMeta, taskDefinition, converterContext);
case HTTP:
return new HttpParameterConverter(processMeta, taskDefinition, converterContext);
case SPARK:
return new SparkParameterConverter(processMeta, taskDefinition, converterContext);
case MR:
return new MrParameterConverter(processMeta, taskDefinition, converterContext);
case HIVECLI:
return new HiveCliParameterConverter(processMeta, taskDefinition, converterContext);
case DATAX:
return new DataxParameterConverter(processMeta, taskDefinition, converterContext);
case SQOOP:
return new SqoopParameterConverter(processMeta, taskDefinition, converterContext);
case FLINK:
return new FlinkParameterConverter(processMeta, taskDefinition, converterContext);
case DLC:
return new DLCParameterConverter(processMeta, taskDefinition, converterContext);
default:
markUnSupportedTask(processMeta.getProcessDefinition(), taskDefinition);
throw new UnSupportedTypeException(taskDefinition.getTaskType());
}
}