public override DTOPartido CrearDto(Entidad entidad) { if (!(entidad is Partido partido)) { logger.Error("Casteo invalido de la entidad " + entidad + " a Partido"); throw new CasteoInvalidoException("La entidad no es del tipo Partido"); } DTOPartido dto = FabricaDTO.CrearDTOPartido(); TraductorEquipo traductorEquipo = FabricaTraductor.CrearTraductorEquipo(); dto.Equipo1 = traductorEquipo.CrearDto(partido.Equipo1); dto.Equipo2 = traductorEquipo.CrearDto(partido.Equipo2); TraductorEstadio traductorEstadio = FabricaTraductor.CrearTraductorEstadio(); dto.Estadio = traductorEstadio.CrearDto(partido.Estadio); TraductorAlineacion traductorAlineacion = FabricaTraductor.CrearTraductorAlineacion(); dto.Alineaciones = traductorAlineacion.CrearListaDto(partido.Alineaciones.Cast <Entidad>().ToList()); dto.FechaInicioPartido = partido.FechaInicioPartido; dto.FechaFinPartido = partido.FechaFinPartido; dto.Arbitro = partido.Arbitro; dto.Id = partido.Id; return(dto); }
public override DTOAlineacion CrearDto(Entidad entidad) { if (!(entidad is Alineacion alineacion)) { logger.Error("Casteo invalido de la entidad " + entidad + " a Alineacion"); throw new CasteoInvalidoException("La entidad no es del tipo Alineacion"); } DTOAlineacion dto = FabricaDTO.CrearDTOAlineacion(); TraductorEquipo traductorEquipo = FabricaTraductor.CrearTraductorEquipo(); dto.Equipo = traductorEquipo.CrearDto(alineacion.Equipo); TraductorObtenerJugadores traductorJugadores = FabricaTraductor.CrearTraductorObtenerJugadores(); dto.Jugador = traductorJugadores.CrearDto(alineacion.Jugador); dto.Partido = FabricaDTO.CrearDTOPartidoSoloId(); dto.Partido.Id = alineacion.Partido.Id; dto.EsCapitan = alineacion.EsCapitan; dto.EsTitular = alineacion.EsTitular; dto.Id = alineacion.Id; dto.Posicion = alineacion.Posicion; return(dto); }
public HttpResponseMessage ObtenerEquipos() { logger.Info("Entrando a obtenerEquipos[]"); try { Comando comando = FabricaComando.CrearComandoObtenerTodosLosEquipos(); comando.Ejecutar(); TraductorEquipo traductorEquipo = FabricaTraductor.CrearTraductorEquipo(); List <DTOEquipo> respuesta = traductorEquipo.CrearListaDto(comando.GetEntidades()); return(Request.CreateResponse(HttpStatusCode.OK, respuesta)); } catch (ExcepcionPersonalizada ex) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Mensaje)); } catch (Exception ex) { logger.Error(ex, "Ocurrio un error inesperado"); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Error desconocido")); } }