Implemented VirtualPrinterDriver project

This commit is contained in:
Marco Batzinger 2020-10-19 17:44:50 +02:00
parent f29c84821b
commit 5c87967c3f
125 changed files with 8191 additions and 0 deletions

View file

@ -0,0 +1,42 @@
using System.Diagnostics.CodeAnalysis;
using JetBrains.Annotations;
using NamedPipeWrapper;
using VirtualPrinter.ProgressInfo.Lib.Interfaces;
namespace VirtualPrinter.ProgressInfo.Lib
{
[ExcludeFromCodeCoverage]
public class ProgressInfoServer : IProgressInfoServer
{
[NotNull]
private readonly NamedPipeServer<Core.Message.Message> _server;
public ProgressInfoServer([NotNull] NamedPipeServer<Core.Message.Message> server)
{
_server = server;
_server.ClientConnected += ServerOnClientConnected;
}
public event ConnectionEventHandler<Core.Message.Message, Core.Message.Message> ClientConnected;
private void ServerOnClientConnected([CanBeNull] NamedPipeConnection<Core.Message.Message, Core.Message.Message> connection) => ClientConnected?.Invoke(connection);
public void PushMessage([CanBeNull] Core.Message.Message message)
{
_server.PushMessage(message);
}
public void Start()
{
_server.Start();
}
public void Stop()
{
_server.Stop();
}
}
}