comparison Implab/Components/IRunnable.cs @ 203:4d9830a9bbb8 v2

Added 'Fail' method to RunnableComponent which allows component to move from Running to Failed state. Added PollingComponent a timer based runnable component More tests Added FailPromise a thin class to wrap exceptions Fixed error handling in SuccessPromise classes.
author cin
date Tue, 18 Oct 2016 17:49:54 +0300
parents 240aa6994018
children 8200ab154c8a
comparison
equal deleted inserted replaced
202:2651cb9a4250 203:4d9830a9bbb8
1 using System; 1 using System;
2 2
3 namespace Implab.Components { 3 namespace Implab.Components {
4 public interface IRunnable { 4 public interface IRunnable {
5 /// <summary>
6 /// Starts this instance.
7 /// </summary>
5 IPromise Start(); 8 IPromise Start();
6 9
10 /// <summary>
11 /// Stops this instance. After the instance is stopped it can't be started again, stopping should be treated as gracefull and async dispose.
12 /// </summary>
7 IPromise Stop(); 13 IPromise Stop();
8 14
9 ExecutionState State { get; } 15 ExecutionState State { get; }
10 16
11 Exception LastError { get; } 17 Exception LastError { get; }