internal override Guid Process(JobProcessor processor, JobRequest request) { throw new ObjectDisposedException(IllegalCommandInStateMessage()); }
internal override void Start(JobProcessor processor) { processor.CurrentState = new Idle(); processor.Initiate(); }
internal override void Dispose(JobProcessor processor) { // We are already disposed and must handle subsequent calls to Dispose() // in an idempotent manner, thus - do nothing instead of throwing. }
internal override void Dispose(JobProcessor processor) { processor.CurrentState = new Disposed(); processor.Terminate(); }
internal override Guid Process(JobProcessor processor, JobRequest request) { return processor.Schedule(request); }
internal virtual void Stop(JobProcessor processor) { throw new InvalidOperationException(IllegalCommandInStateMessage()); }
internal virtual Guid Process(JobProcessor processor, JobRequest request) { throw new InvalidOperationException(IllegalCommandInStateMessage()); }
internal override void Stop(JobProcessor processor) { throw new ObjectDisposedException(IllegalCommandInStateMessage()); }