public override void HandleTaskExecEvent(TaskExecEvent ev) { if (ev is InterTaskMessage) { InterTaskMessage tm = ev as InterTaskMessage; if (tm.ToMailbox != this.Mailbox) return; //var sr = Context.GetService<IMessageCorrelationRegistry>(); //sr.Unsubscribe(this.Mailbox, this.InstanceId); this.Complete(); } base.HandleTaskExecEvent(ev); }
public override void HandleTaskExecEvent(TaskExecEvent ev) { base.HandleTaskExecEvent(ev); if (ev is TaskTimerEvent) { if (this.Status == TaskStatus.Enabling || this.Status == TaskStatus.Enabled || this.Status == TaskStatus.Selected) { if (DateTime.Now + this.Delay <= DateTime.Now) { Complete(); } } } }
protected void HandleChildTaskEvent(TaskExecEvent ev) { if (ev.ParentTaskInstanceId != this.InstanceId) throw new Exception("invalid instance id"); var ti = GetTransitionInfo(ev.FromTaskInstanceId); if (ti == null) throw new Exception("Child transition not found: " + ev.FromTaskInstanceId); if (ev is TaskEnabled) { Handle((TaskEnabled)ev); return; } else if (ev is TaskCancelled) { Handle((TaskCancelled)ev); return; } else if (ev is TaskCompleted) { Handle((TaskCompleted)ev); return; } else if (ev is TaskFailed) { Handle((TaskFailed)ev); return; } else if (ev is TaskSelected) { Handle((TaskSelected)ev); return; } else throw new Exception(); }
public override void HandleTaskExecEvent(TaskExecEvent ev) { base.HandleTaskExecEvent(ev); HandleChildTaskEvent(ev); ContinueTaskExecution(); }
public void NotifyTaskEvent(TaskExecutionEvents.TaskExecEvent ev) { SendProcessMessage(ev, false); }
public void ScheduleTaskEvent(TaskExecutionEvents.TaskExecEvent ev, DateTime deliveryDate) { _runner.MessageBus.NotifyAt(deliveryDate, ev); }
public virtual void HandleTaskExecEvent(TaskExecEvent ev) { if (ev.ParentTaskInstanceId != this.InstanceId) throw new Exception("Invalid ParentTaskInstanceId"); }
public override void HandleTaskExecEvent(TaskExecEvent ev) { base.HandleTaskExecEvent(ev); if (ev is TaskEnabled) { Handle((TaskEnabled)ev); } else if (ev is TaskSelected) { Handle((TaskSelected)ev); } else if (ev is TaskCompleted) { Handle((TaskCompleted)ev); } else if (ev is TaskFailed) { Handle((TaskFailed)ev); } else if (ev is TaskCancelled) { Handle((TaskCancelled)ev); } else throw new Exception(); }