public void Listen(TcpListener tcpListener) { while (!_shouldStop) { var protocol = new TCPProtocol(); var clientName = String.Empty; protocol.Listen(tcpListener); try { var message = protocol.RecieveMessage(); clientName = message.ClientName; //Le comunico al servidor de conciliacion que un cliente se conecto. var remotingRequest = new ClientConnectionRequest() { ClientName = clientName }; _remotingService.SendMessage(remotingRequest); if (message.Header == MessageTypeEnum.REQ) { if (message.Cmd == CommandEnum.Download) { DownloadFile(protocol, (DownloadRequest)message); } else if (message.Cmd == CommandEnum.Upload) { UploadFile(protocol, (UploadRequest)message); } else if (message.Cmd == CommandEnum.ListFiles) { SendFileList(protocol, (ListFilesRequest)message); } else if (message.Cmd == CommandEnum.Backup) { SyncFiles(protocol, (ListFilesRequest)message); } } } catch (Exception ex) { Console.WriteLine("Ocurrio un error.", ex.Message); } finally { protocol.Disconnect(); //Le comunico al servidor de conciliacion que un cliente se desconecto. var remotingRequest = new ClientDisconnectionRequest() { ClientName = clientName }; _remotingService.SendMessage(remotingRequest); } } }
private void SendRemotingConnectionRequest() { //Le comunico al servidor de registro de actividad que me conecte. var remotingRequest = new ClientConnectionRequest() { ClientName = ClientData.Instance.ClientName }; _remotingService.SendMessage(remotingRequest); }
public virtual void SetConnectionRequest(ClientConnectionRequest connRequest) { if (this.aborted) { return; } this.abortLock.Lock(); try { this.cancellable = new _Cancellable_60(connRequest); } finally { this.abortLock.Unlock(); } }
public ClientConnectionResponse NotifyConnection(ClientConnectionRequest message) { try { AddItemToList(string.Format("Info: Se conecto el cliente de nombre: {0}", message.ClientName)); CommunicationMQ.EnviarMensaje(CommunicationMQ.QueueConciliation, message, string.Format("Info: Se conecto el cliente de nombre: {0}", message.ClientName)); return(new ClientConnectionResponse() { Cmd = CommandEnum.ClientConnection, Header = MessageTypeEnum.RES, Result = TransferResponseEnum.OK }); } catch (Exception ex) { throw new Exception(string.Format("Error: no se pudo notificar la conexion: {0}", ex.Message)); } }
public _Cancellable_60(ClientConnectionRequest connRequest) { this.connRequest = connRequest; }
public ClientRequestingConnectionEventArgs(IClient client, ClientConnectionRequest request) : base(client) { Request = request; }