Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Repositories.Memory/EventoRepository.cs @ 214:7d838e7d83b3
Se soluciona ticket 176. Se agrega validación para que no se pueda agendar otro evento con el mismo título, buscando los eventos que no estén en estado propuesto.
author | alabra |
---|---|
date | Wed, 24 Aug 2011 19:49:18 -0300 |
parents | a36a76bd6ec3 |
children | c61954d24c8c |
line wrap: on
line source
using System; using System.Collections.Generic; using System.Linq; using AltNetHispano.Agendas.Domain; using AltNetHispano.Agendas.Domain.Repositories; namespace AltNetHispano.Agendas.Repositories.Memory { public class EventoRepository : RepositoryBase<Evento>, IEventoRepository { public void Update(Evento evento) { //nada que hacer en este método para este repositorio } public bool ExistePonente(Persona ponente) { return Objects.Values.Any(ev => ev.Ponente == ponente); } public IList<Evento> GetByState(EventoState state) { return Objects.Values.Where(e => e.Estado == state).ToList(); } public IList<Evento> GetActivos() { return Objects.Values.Where( e => e.Estado != EventoPublicadoState.GetInstance()).ToList(); } public Evento GetPropuestaByTitulo(string titulo) { return Objects.Values.SingleOrDefault(e => e.Estado == EventoPropuestoState.GetInstance() && e.Titulo == titulo); } public Evento GetNoPropuestoByTitulo(string titulo) { return Objects.Values.SingleOrDefault(e => e.Titulo == titulo && e.Estado != EventoPropuestoState.GetInstance()); } public static void Clear() { Objects.Clear(); } } }