public (IMessageSender, IMessageBinder) CreateClientSide() { var binder = new MessageBinder(); var recv = new MessageReceiver(binder, Serialier); var client = new TcpClient("localhost", Port); var sender = new TcpMessageSender(client, Serialier); var listener = new TcpMessageListener(recv, client, sender); return(sender, binder); }
private static (ChatClient, TcpClient, TcpMessageListener) StartClientFactory(IPEndPoint server) { var binder = new MessageBinder(); var recv = new MessageReceiver(binder, serializer); var client = new TcpClient(); client.Connect(server); var tcpClient = new TcpMessageListener(recv, client); var sender = new TcpMessageSender(client, serializer); var connectSignal = new Signal <string>(); var leaveSignal = new Signal <string>(); var messageRecvSignal = new Signal <(string, string)>(); var chatClient = new ChatClient(sender, binder, messageRecvSignal, connectSignal, leaveSignal); return(chatClient, client, tcpClient); }