using System; using System.Diagnostics; using XSockets.Core.Common.Socket; using XSockets.Core.Common.Socket.Event.Arguments; using XSockets.Plugin.Framework; using XSockets.Plugin.Framework.Helpers; using Toolbox; using System.Net; namespace H_Man { public class XSocketsServer { private IXSocketServerContainer server = null; public XSocketsServer() { this.server = Composable.GetExport(); this.server.OnServersStarted += server_OnServersStarted; this.server.OnServersStopped += server_OnServersStopped; this.server.OnError += server_OnError; } public void Start() { this.server.StartServers(); } public void Stop() { this.server.StopServers(); } private void server_OnError(object sender, XSockets.Core.Common.Socket.Event.Arguments.OnErrorArgs e) { Console.WriteLine("H-Man: Error: " + e.Exception.Message); Console.WriteLine("H-Man: Error: " + e.Exception.StackTrace); } private void server_OnServersStopped(object sender, EventArgs e) { foreach (IXSocketServer s in server.Servers) { Console.WriteLine("H-Man: Stopped server " + s.ConfigurationSetting.Port); } } private void server_OnServersStarted(object sender, EventArgs e) { foreach (IXSocketServer s in server.Servers) { Console.WriteLine("H-Man: Started server " + s.ConfigurationSetting.Port); } } } }