12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- using InABox.Clients;
- using InABox.Core;
- using InABox.Rpc;
- using PRSServices;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace PRSServer;
- internal class PipeDatabaseProxyEngine : DatabaseProxyEngine<PipeDatabaseProxyProperties>
- {
- private string PipeName;
- RpcPipeProxyServer ProxyServer { get; set; }
- public override void Configure(Server server)
- {
- base.Configure(server);
- PipeName = DatabaseServerProperties.GetPipeName(server.Key, true);
- }
- protected override void RunProxy()
- {
- Logger.Send(LogType.Information, "", "Starting RPC Listener: Name=[" + PipeName + "]");
- try
- {
- ProxyServer = new RpcPipeProxyServer(PipeName, ServerTransport);
- ProxyServer.OnLog += Logger.Send;
- ProxyServer.Start();
- }
- catch (Exception eListen)
- {
- Logger.Send(LogType.Error, ClientFactory.UserID, eListen.Message);
- }
- }
- public override void Stop()
- {
- ProxyServer.Stop();
- }
- }
|