"The wf action :" + id + " has been udated recently. Ignoring ActionCheckCommand!");
return null;
}
}
if (workflow.getStatus() == WorkflowJob.Status.RUNNING) {
ActionExecutor executor = Services.get().get(ActionService.class).getExecutor(action.getType());
if (executor != null) {
ActionExecutorContext context = null;
try {
boolean isRetry = false;
context = new ActionCommand.ActionExecutorContext(workflow, action, isRetry);
incrActionCounter(action.getType(), 1);
Instrumentation.Cron cron = new Instrumentation.Cron();
cron.start();
executor.check(context, action);
cron.stop();
addActionCron(action.getType(), cron);
if (action.isExecutionComplete()) {
if (!context.isExecuted()) {
XLog.getLog(getClass()).warn(XLog.OPS,
"Action Completed, ActionExecutor [{0}] must call setExecutionData()",
executor.getType());
action.setErrorInfo(EXEC_DATA_MISSING,
"Execution Complete, but Execution Data Missing from Action");
failJob(context);
action.setLastCheckTime(new Date());
store.updateAction(action);