Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Domain/EventoAgendadoState.cs @ 104:c5034884c7d7
refactor para que los estados sean singletons
author | jorge.rowies |
---|---|
date | Sun, 05 Jun 2011 13:22:36 -0300 |
parents | 23325dddddcc |
children | 53bcd338542b |
line wrap: on
line source
using AltNetHispano.Agendas.Domain.Exceptions; namespace AltNetHispano.Agendas.Domain { public class EventoAgendadoState : EventoState { private EventoAgendadoState() { } private static readonly EventoState _instance = new EventoAgendadoState(); public static EventoState GetInstance() { return _instance; } private const string Descripcion = "Agendado"; public override void Promover(Evento evento, Accion accion) { switch (accion) { case Accion.Confirmar: evento.SetEstado(EventoConfirmadoState.GetInstance()); evento.AddTrack(new Track(evento, Accion.Confirmar)); break; default: throw new AccionNoSoportadaException(this.GetType(), accion); } } public override string GetDescripcion() { return Descripcion; } } }