Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Domain/EventoConfirmadoState.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 EventoConfirmadoState : EventoState { private EventoConfirmadoState() { } private static readonly EventoState _instance = new EventoConfirmadoState(); public static EventoState GetInstance() { return _instance; } private const string Descripcion = "Confirmado"; public override void Promover(Evento evento, Accion accion) { switch (accion) { case Accion.Publicar: evento.SetEstado(EventoPublicadoState.GetInstance()); evento.AddTrack(new Track(evento, Accion.Publicar)); break; default: throw new AccionNoSoportadaException(this.GetType(), accion); } } public override string GetDescripcion() { return Descripcion; } } }