public MyServerSession(Socket socket, MySocketServer server) : base(socket) { Handlers.Add(new TransferHandler() { Server = server }); ServiceClientHandler serviceClientHandler = new ServiceClientHandler(); ServiceHandler serviceManager = new ServiceHandler(); Handlers.Add(serviceManager); this.Handlers.Add(serviceClientHandler); Handlers.Add(new MyServerHandler()); ICalcback calcCallback = serviceClientHandler.GetServiceProxy <ICalcback>("calcc"); serviceManager.AddService("calc", new Calc() { callback = calcCallback }); Calc2 calc2 = new Calc2(); serviceManager.AddService("calc2", calc2); ITermainalCallbackService callback = serviceClientHandler .GetServiceProxy <ITermainalCallbackService>("tc"); serviceManager.AddService("t", new TerminalService(callback)); serviceManager.AddService("terminal", new TerminalService2()); }
public static void Invoke(ServiceClientHandler handler) { var sc = new POCServiceClient("NetTcpBinding_IPOCService"); try { _log.Info("ServiceClientHandler: " + handler.Method); handler(sc); } catch (TimeoutException ex) { _log.Error("Timeout error: {0}" + ex.Message, ex); sc.Abort(); } catch (FaultException fe) { _log.Error("Timeout error: {0}" + fe.Message, fe); sc.Abort(); } catch (CommunicationException ce) { _log.Error("Timeout error: {0}" + ce.Message, ce); sc.Abort(); } finally { if (sc.State != CommunicationState.Closed) { sc.Close(); } } }
public MySocketClient() { ServiceHandler serviceManager = new ServiceHandler(); serviceClientHandler = new ServiceClientHandler(); this.Handlers.Add(serviceManager); this.Handlers.Add(serviceClientHandler); TerminalCallback = new TerminalCallbackService(); serviceManager.AddService("tc", TerminalCallback); Terminal = serviceClientHandler.GetServiceProxy <ITerminalService>("t"); serviceManager.AddService("calcc", new CalcCallback()); calc = serviceClientHandler.GetServiceProxy <ICalc>("calc"); }