private int ObtenerIdTransaccion(string[] campos) { var idTransaccion = Convert.ToInt32(campos[1]); if (idTransaccion == 0) { var mensaje = "El id transaccion no puede ser 0"; _interfacePresenter.MostrarMensaje(mensaje); throw new ArgumentException(mensaje); } return(idTransaccion); }
public IList <string> GetMessages() { string prefijoMensaje = "test"; var messages = new List <string>(); _interfacePresenter.MostrarMensaje("Empezando a leer redis"); try { bool tieneDatos = false; while (true) { var result = _redisQueue.Pop(_redisQueueName); if (string.IsNullOrEmpty(result)) { break; } messages.Add(result); tieneDatos = true; if (messages.Count >= 100) { break; } } ; if (!tieneDatos) { _interfacePresenter.MostrarMensaje("Cola Vacia"); return(null); } return(messages); } catch (Exception ex) { return(messages.Any() ? messages : null); } }
public void PedidoLectorQueueRedis(object source, ElapsedEventArgs e) { lock (_pedidoLectorQueueRedisLock) { try { timerLectorQueueRedis.Enabled = false; _interfacePresenter.MostrarMensaje("Leyendo cola de concertación"); var messages = _redisQueueConsumer.GetMessages(); if (messages == null) { timerLectorQueueRedis.Enabled = true; return; } var redisMessagesToProcess = messages.ToArray(); _interfacePresenter.MostrarMensaje("Fin de lectura de cola de concertación"); _interfacePresenter.MostrarMensaje("Iniciando la decodificación de los mensajes..."); var msjsDecoded = new NovedadFIXDTO[redisMessagesToProcess.Length]; for (int i = 0; i < redisMessagesToProcess.Length; i++) { if (redisMessagesToProcess[i] == null) { continue; } msjsDecoded[i] = _messageDecoder.DecodificarMensaje(redisMessagesToProcess[i]); } _interfacePresenter.MostrarMensaje("Fin de la decodificación de los mensajes."); _interfacePresenter.MostrarMensaje("Empezando a tomar acciones en base al tipo de ordenes recibidas..."); for (int i = 0; i < msjsDecoded.Length; i++) { if (msjsDecoded[i] == null) { continue; } _transaccionWrapperCRUDManager.RealizarAccionDeOrden(msjsDecoded[i]); } _interfacePresenter.MostrarMensaje("Acciones terminadas."); timerLectorQueueRedis.Enabled = true; } catch (Exception ex) { } } }
public void FromApp(Message msg, SessionID sessionID) { try { Crack(msg, sessionID); } catch (Exception ex) { if (!(ex is UnsupportedMessageType)) { _logger.LogMensaje(TipoLog.Fatal, ex, "Error al parsear un mensaje"); _interfacePresenter.MostrarMensaje($"ERROR: {ex.Message}"); } } }