Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Repositories.Memory/EventoRepository.cs @ 136:462a78196d11
Filtrado de eventos por estado
author | nelopauselli |
---|---|
date | Tue, 26 Jul 2011 14:33:49 -0300 |
parents | b74734a1a755 |
children | 2d1adbaf0373 |
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 IList<Evento> GetByState(EventoState state) { return Objects.Values.Where(e => e.Estado == state.GetDescripcion()).ToList(); } public void Delete(Evento evento) { Objects.Remove(evento.Id); } public Evento Get(Guid vanId) { Evento evento; return Objects.TryGetValue(vanId, out evento) ? evento : null; } public IList<Evento> GetActivos() { return Objects.Values.Where( e => e.Estado != EventoPublicadoState.GetInstance().GetDescripcion()).ToList(); } public Evento GetPropuestaByTitulo(string titulo) { return Objects.Values.SingleOrDefault(e => e.Estado == EventoPropuestoState.GetInstance().GetDescripcion() && e.Titulo == titulo); } public static void Clear() { Objects.Clear(); } } }