##// END OF EJS Templates
sync
sync

File last commit:

r289:95896f882995 v3.0.14 v3
r291:450a55e0c222 v3
Show More
MockPollComponent.cs
36 lines | 1.1 KiB | text/x-csharp | CSharpLexer
using System;
using System.Threading;
using System.Threading.Tasks;
using Implab.Components;
namespace Implab.Test {
public class MockPollComponent : PollingComponent {
public Func<CancellationToken,Task> PollWorker { get; set;}
public Func<CancellationToken, Task> StartWorker { get; set; }
public Func<CancellationToken, Task> StopWorker { get; set; }
public MockPollComponent(bool initialized) : base(initialized) {
}
protected async override Task Poll(CancellationToken ct) {
if(PollWorker!= null)
await PollWorker.Invoke(ct);
}
protected async override Task StopInternalAsync(CancellationToken ct) {
await base.StopInternalAsync(ct);
if (StopWorker != null)
await StopWorker.Invoke(ct);
}
protected async override Task StartInternalAsync(CancellationToken ct) {
await base.StartInternalAsync(ct);
if (StartWorker != null)
await StartWorker.Invoke(ct);
}
}
}