|
|
|
@ -215,6 +215,7 @@ public class PythonGateway {
|
|
|
|
|
* @param globalParams global params |
|
|
|
|
* @param schedule schedule for workflow, will not set schedule if null, |
|
|
|
|
* and if would always fresh exists schedule if not null |
|
|
|
|
* @param onlineSchedule Whether set the workflow's schedule to online state |
|
|
|
|
* @param warningType warning type |
|
|
|
|
* @param warningGroupId warning group id |
|
|
|
|
* @param timeout timeout for workflow working, if running time longer than timeout, |
|
|
|
@ -231,6 +232,7 @@ public class PythonGateway {
|
|
|
|
|
String description, |
|
|
|
|
String globalParams, |
|
|
|
|
String schedule, |
|
|
|
|
boolean onlineSchedule, |
|
|
|
|
String warningType, |
|
|
|
|
int warningGroupId, |
|
|
|
|
int timeout, |
|
|
|
@ -272,7 +274,9 @@ public class PythonGateway {
|
|
|
|
|
|
|
|
|
|
// Fresh workflow schedule
|
|
|
|
|
if (schedule != null) { |
|
|
|
|
createOrUpdateSchedule(user, projectCode, processDefinitionCode, schedule, workerGroup, warningType, warningGroupId); |
|
|
|
|
createOrUpdateSchedule(user, projectCode, processDefinitionCode, schedule, onlineSchedule, workerGroup, |
|
|
|
|
warningType, |
|
|
|
|
warningGroupId); |
|
|
|
|
} |
|
|
|
|
processDefinitionService.releaseProcessDefinition(user, projectCode, processDefinitionCode, ReleaseState.getEnum(releaseState)); |
|
|
|
|
return processDefinitionCode; |
|
|
|
@ -312,6 +316,7 @@ public class PythonGateway {
|
|
|
|
|
* @param projectCode project which workflow belongs to |
|
|
|
|
* @param workflowCode workflow code |
|
|
|
|
* @param schedule schedule expression |
|
|
|
|
* @param onlineSchedule Whether set the workflow's schedule to online state |
|
|
|
|
* @param workerGroup work group |
|
|
|
|
* @param warningType warning type |
|
|
|
|
* @param warningGroupId warning group id |
|
|
|
@ -320,6 +325,7 @@ public class PythonGateway {
|
|
|
|
|
long projectCode, |
|
|
|
|
long workflowCode, |
|
|
|
|
String schedule, |
|
|
|
|
boolean onlineSchedule, |
|
|
|
|
String workerGroup, |
|
|
|
|
String warningType, |
|
|
|
|
int warningGroupId) { |
|
|
|
@ -340,9 +346,11 @@ public class PythonGateway {
|
|
|
|
|
schedulerService.updateSchedule(user, projectCode, scheduleId, schedule, WarningType.valueOf(warningType), |
|
|
|
|
warningGroupId, DEFAULT_FAILURE_STRATEGY, DEFAULT_PRIORITY, workerGroup, DEFAULT_ENVIRONMENT_CODE); |
|
|
|
|
} |
|
|
|
|
// Always set workflow online to set schedule online
|
|
|
|
|
processDefinitionService.releaseProcessDefinition(user, projectCode, workflowCode, ReleaseState.ONLINE); |
|
|
|
|
schedulerService.setScheduleState(user, projectCode, scheduleId, ReleaseState.ONLINE); |
|
|
|
|
if (onlineSchedule) { |
|
|
|
|
// set workflow online to make sure we can set schedule online
|
|
|
|
|
processDefinitionService.releaseProcessDefinition(user, projectCode, workflowCode, ReleaseState.ONLINE); |
|
|
|
|
schedulerService.setScheduleState(user, projectCode, scheduleId, ReleaseState.ONLINE); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void execWorkflowInstance(String userName, |
|
|
|
|