/// <summary> /// 创建方法 /// </summary> /// <param name="sendbackOperation">退回选项</param> /// <param name="session">会话</param> /// <returns>退回器</returns> internal static NodeSendBack CreateNodeReverter(SendBackOperation sendbackOperation, IDbSession session) { NodeSendBack nodeSendBack = null; if (sendbackOperation.CurrentNodeOperationType == SendBackOperationTypeEnum.Normal) { if (sendbackOperation.PreviousNodeOperationType == SendBackOperationTypeEnum.Normal) { nodeSendBack = new NodeSendBackTask(sendbackOperation, session); } else { //如果有其它模式,没有处理到,则直接抛出异常 throw new WorkflowException(string.Format("社区版不支持的退回场景:{0},建议请使用企业版以上版本!", sendbackOperation.PreviousNodeOperationType.ToString())); } } else if (sendbackOperation.CurrentNodeOperationType == SendBackOperationTypeEnum.MultipleInstance) { //如果有其它模式,没有处理到,则直接抛出异常 throw new WorkflowException(string.Format("社区版不支持的退回场景:{0},建议请使用企业版以上版本!", sendbackOperation.CurrentMultipleInstanceDetailType.ToString())); } return(nodeSendBack); }
/// <summary> /// 创建方法 /// </summary> /// <param name="sendbackOperation">退回选项</param> /// <param name="session">会话</param> /// <returns>退回器</returns> internal static NodeSendBack CreateNodeReverter(SendBackOperation sendbackOperation, IDbSession session) { NodeSendBack nodeSendBack = null; if (sendbackOperation.CurrentNodeOperationType == SendBackOperationTypeEnum.Normal) { if (sendbackOperation.PreviousNodeOperationType == SendBackOperationTypeEnum.Normal) { nodeSendBack = new NodeSendBackTask(sendbackOperation, session); } else { //如果有其它模式,没有处理到,则直接抛出异常 throw new WorkflowException(LocalizeHelper.GetEngineMessage("nodesendbackfactory.CreateNodeReverter.error", sendbackOperation.PreviousNodeOperationType.ToString())); } } else if (sendbackOperation.CurrentNodeOperationType == SendBackOperationTypeEnum.MultipleInstance) { //如果有其它模式,没有处理到,则直接抛出异常 throw new WorkflowException(LocalizeHelper.GetEngineMessage("nodesendbackfactory.CreateNodeReverter.error", sendbackOperation.CurrentMultipleInstanceDetailType.ToString())); } return(nodeSendBack); }
/// <summary> /// 构造函数 /// </summary> /// <param name="sendbackOperation">退回选项</param> /// <param name="session">数据会话</param> internal NodeSendBack(SendBackOperation sendbackOperation, IDbSession session) { _sendBackOperation = sendbackOperation; _session = session; _activityInstanceManager = new ActivityInstanceManager(); _taskManager = new TaskManager(); _transitionInstanceManager = new TransitionInstanceManager(); }
internal NodeSendBackTask(SendBackOperation sendbackOperation, IDbSession session) : base(sendbackOperation, session) { }
internal NodeSendBackMISReady(SendBackOperation sendbackOperation, IDbSession session) : base(sendbackOperation, session) { }
internal NodeSendBackToMISPrevious(SendBackOperation sendbackOperation, IDbSession session) : base(sendbackOperation, session) { }