}
}
}
public void executeConnector(ConnectorInstanceBehavior connector, ExecutionContext executionContext) {
TokenEntity token = executionContext.getToken();
// create action log
// ActionLog actionLog = new ActionLog(action);
// token.startCompositeLog(actionLog);
try {
// update the execution context
executionContext.setConnector(connector);
// execute the action
// log.debug("executing action '"+action+"'");
try {
token.lock();
if(connector.getSkipExpression()!=null&&!connector.getSkipExpression().equals("")){
Object skipExpressionObj=ExpressionMgmt.execute(connector.getSkipExpression(), executionContext);
if(StringUtil.getBoolean(skipExpressionObj)){
return ;
}
}
if (connector.isTimeExecute()) {
// 定时器执行方式
timeExecute(executionContext, connector);
} else {
// 直接执行方式
connector.execute(executionContext);
}
} finally {
token.unlock();
}
} catch (Exception exception) {
// NOTE that Error's are not caught because that might halt the JVM
// and mask the original Error