Files
2026-02-05 09:31:38 +01:00

25 lines
584 B
C#

using System.Threading.Channels;
using Inspectron.Epson.Queue;
namespace Inspectron.Epson.PrintServer.JobSources;
public class SingleJobSource: IPrintJobSource
{
public SingleJobSource(PrintJob job)
{
_channel.Writer.WriteAsync(job);
}
private Channel<PrintJob> _channel = Channel.CreateUnbounded<PrintJob>();
public Task StartAsync()
{
return Task.CompletedTask;
}
public async Task<PrintJob> GetNextJobAsync(CancellationToken cancellationToken)
{
return await _channel.Reader.ReadAsync(cancellationToken);
}
}