view Agendas/trunk/src/Agendas.Repositories.Memory/EventoRepository.cs @ 26:71b02443450a

UI de Propuestas de VANs
author nelo@MTEySS.neluz.int
date Tue, 15 Mar 2011 08:45:00 -0300
parents 41b283d27e3e
children 016b9b9b8d3a
line wrap: on
line source

using System;
using System.Collections.Generic;
using System.Linq;
using AltNetHispano.Agendas.Domain;
using AltNetHispano.Agendas.Domain.Repositories;

namespace Agendas.Repositories.Memory
{
	public class EventoRepository : RepositoryBase<Evento>, IEventoRepository
	{
		public void Save(Evento evento)
		{
			if (Guid.Empty.Equals(evento.Id))
			{
				evento.Id = Guid.NewGuid();
				Objects.Add(evento.Id, evento);
			}
		}

		public void Update(Evento evento)
		{
			//nada que hacer en este método para este repositorio
		}

		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> GetEventosSinFecha()
		{
			return Objects.Values.Where(e => e.Fecha == null).ToList();
		}

		public IList<Evento> GetEventosConFecha()
		{
			return Objects.Values.Where(e => e.Fecha != null).ToList();
		}

		public static void Clear()
		{
			Objects.Clear();
		}
	}
}