Mercurial > altnet-hispano
diff Agendas/trunk/src/Agendas.Domain/EventoPropuestoState.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 diff
--- a/Agendas/trunk/src/Agendas.Domain/EventoPropuestoState.cs Sun Jun 05 13:06:23 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Domain/EventoPropuestoState.cs Sun Jun 05 13:22:36 2011 -0300 @@ -4,14 +4,24 @@ { public class EventoPropuestoState : EventoState { - public const string Descripcion = "Propuesto"; + private EventoPropuestoState() + { + } + + private static readonly EventoState _instance = new EventoPropuestoState(); + public static EventoState GetInstance() + { + return _instance; + } + + private const string Descripcion = "Propuesto"; public override void Promover(Evento evento, Accion accion) { switch (accion) { case Accion.Agendar: - evento.SetEstado(new EventoAgendadoState()); + evento.SetEstado(EventoAgendadoState.GetInstance()); evento.AddTrack(new Track(evento, Accion.Agendar)); break; default: