public Paso ObtenerPaso(DinamicaDeMensaje dinamicaMensaje, PASO_DINAMICA pasoDinamica) { EnumTipoFuncionalidad tipoMensaje = (EnumTipoFuncionalidad) Enum.ToObject(typeof(EnumTipoFuncionalidad), pasoDinamica.PDT_FUNCIONALIDAD); Componente componente; switch (tipoMensaje) { case EnumTipoFuncionalidad.Validacion: componente = this.validacion; break; case EnumTipoFuncionalidad.Transformacion: componente = this.transformacion; break; case EnumTipoFuncionalidad.Criptografia: componente = this.criptografia; break; case EnumTipoFuncionalidad.Enviar: case EnumTipoFuncionalidad.Recibir: componente = this.comunicacion; break; case EnumTipoFuncionalidad.Descartar: componente = this.descartar; break; default: throw new Exception("Error: Dinamica - ObtenerPaso (No debe entrar a estar parte del código, no se encontro ningún componente"); } return componente.ObtenerPaso(dinamicaMensaje, pasoDinamica); }
public TransformacionMensaje(DinamicaDeMensaje dinamicaMensaje, TRANSFORMACION entidad, PASO_DINAMICA pasoDinamica, IFactoryDA factoryDA, IDllDinamica dllDinamica) : base(pasoDinamica) { DinamicaMensaje = dinamicaMensaje; FactoryDa = factoryDA; Entidad = entidad; DllDinamica = dllDinamica; }
public Paso ObtenerPaso(DinamicaDeMensaje dinamicaMensaje, PASO_DINAMICA paso) { EnumTipoFuncionalidad tipoMensaje = (EnumTipoFuncionalidad) Enum.ToObject(typeof(EnumTipoFuncionalidad), paso.PDT_FUNCIONALIDAD); switch (tipoMensaje) { case EnumTipoFuncionalidad.Enviar: return new EnviarMensaje(paso); case EnumTipoFuncionalidad.Recibir: return new RecibirMensaje(paso); default: throw new Exception("Error: Comunicacion - ObtenerPaso (No se encontra ninguna comunicacion"); } }
private void EnviarMensaje(Message msg, DinamicaDeMensaje dinamicaMensaje, byte[] mensajeSaliente) { switch (dinamicaMensaje.ResultadoDinamica.Tipo) { case EnumResultadoDinamica.EnviarRespuesta: EnviarRespuesta(msg.ResponseQueue, mensajeSaliente); break; case EnumResultadoDinamica.DescartarMensaje: DescartarMensaje(msg.ResponseQueue); break; case EnumResultadoDinamica.EsperarRespuesta: Tanqueo.Tanquear(dinamicaMensaje); EsperarRespuesta(dinamicaMensaje.ResultadoDinamica.EntidadComunicacion.EDC_COLA , mensajeSaliente); break; } }
private byte[] ConvertirMensajeSaliente(DinamicaDeMensaje dinamicaMensaje) { Convertidor convertidor = Convertidor.ObtenerConvertidor(null, dinamicaMensaje.Mensaje.Tipo); return convertidor.Convertir(dinamicaMensaje.Mensaje); }
private void ProcesarMensajeRequest(Message msg) { try { IEnumerable<PASO_DINAMICA> pasosDinamica; Mensaje mensajeEntrante = ConvertirMensajeEntrante(msg, out pasosDinamica); DinamicaDeMensaje dinamicaMensaje = new DinamicaDeMensaje(dinamica, mensajeEntrante, pasosDinamica); dinamicaMensaje.ProcesarRequest(); byte[] mensajeSaliente = ConvertirMensajeSaliente(dinamicaMensaje); EnviarMensaje(msg, dinamicaMensaje, mensajeSaliente); } catch (Exception ex) { DescartarMensaje(msg.ResponseQueue); } }
public void Tanquear(DinamicaDeMensaje dinamica) { MensajeTanqueado mensajeTanqueado; mensajeTanqueado.dinamica = dinamica; MensajesTanqueados.Add(mensajeTanqueado); }
public Paso ObtenerPaso(DinamicaDeMensaje dinamicaMensaje, PASO_DINAMICA pasoDinamica) { return new ValidacionMensaje(this, pasoDinamica); }
public DinamicaDeMensaje ProcesarMensajeResponse(DinamicaDeMensaje dinamicaMensaje) { dinamicaMensaje.ProcesarResponse(); return dinamicaMensaje; }
public Paso ObtenerPaso(DinamicaDeMensaje dinamicaMensaje, PASO_DINAMICA pasoDinamica) { return new TransformacionMensaje(dinamicaMensaje,ObtenerTransformacion(pasoDinamica), pasoDinamica, FactoryDa, DllDinamica); }
public Paso ObtenerPaso(DinamicaDeMensaje dinamicaMensaje, PASO_DINAMICA pasoDinamica) { return this; }