Ejemplo n.º 1
0
		public static bool RunByName(TaskContext c, WorkflowNames name)
		{
			bool result = false;
			Workflow wf = Workflow.Load(name);
			result = wf.Run(c);
			return result;
		}
Ejemplo n.º 2
0
		public bool Run(TaskContext c)
		{
			bool result = true;			

			for (int i = 0; i <= _Tasks.Count - 1; i++) {
				bool taskResult = false;
				try {
					taskResult = _Tasks[i].Execute(c);
				}
				catch (Exception ex) {
					if (!(ex is System.Threading.ThreadAbortException)) {
						taskResult = false;
						c.Errors.Add(new WorkflowMessage("EXCEPTION", ex.Message, false));
						EventLog.LogEvent(ex);
					}
				}

				if (taskResult == false) {
					result = false;
					Rollback(i, c);
					return false;
				}
			}

			return result;
		}
Ejemplo n.º 3
0
		private bool Rollback(int startFromStepIndex, TaskContext c)
		{
			bool result = true;

			for (int i = startFromStepIndex; i >= 0; i += -1) {
				if (_Tasks[i].Rollback(c) == false) {
					result = false;
				}
			}

			return result;
		}
Ejemplo n.º 4
0
		public override bool Execute(TaskContext context)
		{
			return Execute((ShippingTaskContext)context);
		}
Ejemplo n.º 5
0
		public override bool Rollback(TaskContext context)
		{
			return Rollback((ShippingTaskContext)context);
		}
Ejemplo n.º 6
0
		public override bool Rollback(TaskContext context)
		{
			return true;
		}
Ejemplo n.º 7
0
		public override bool Execute(TaskContext context)
		{
			return false;
		}
Ejemplo n.º 8
0
		public abstract bool Rollback(TaskContext context);
Ejemplo n.º 9
0
		public abstract bool Execute(TaskContext context);
Ejemplo n.º 10
0
		public override bool Execute(TaskContext context)
		{
			return Execute((OrderTaskContext)context);
		}
Ejemplo n.º 11
0
		public override bool Rollback(TaskContext context)
		{
			return Rollback((OrderTaskContext)context);
		}
Ejemplo n.º 12
0
 public override bool Execute(TaskContext context)
 {
     return(Execute((OrderTaskContext)context));
 }
Ejemplo n.º 13
0
 public override bool Rollback(TaskContext context)
 {
     return(Rollback((OrderTaskContext)context));
 }