view Agendas/trunk/src/Agendas.Domain/EventoConfirmadoState.cs @ 298:9bc60d166c8a

Se corrigieron los tests por el cambio de Patrocinador, para que no persista el logo en disco. Se comentó el código de PatrocinadorApiController, que no se utiliza.
author juanjose.montesdeocaarbos
date Sun, 19 Feb 2012 16:00:38 -0300
parents 3639803112c6
children
line wrap: on
line source

using System;
using AltNetHispano.Agendas.Domain.Exceptions;

namespace AltNetHispano.Agendas.Domain
{
	public class EventoConfirmadoState : EventoState
	{
		protected EventoConfirmadoState()
		{
		}

		private static readonly EventoState _instance = new EventoConfirmadoState();
		public static EventoState GetInstance()
		{
			return _instance;
		}

		public override void Promover(Evento evento, Accion accion)
		{
			switch (accion)
			{
				case Accion.Publicar:
					evento.Estado = EventoPublicadoState.GetInstance();
					evento.AddTrack(new Track(evento, Accion.Publicar));
					break;
				default:
					throw new AccionNoSoportadaException(this.GetType(), accion);
			}
		}

		public override string Descripcion
		{
			get { return "Confirmado"; }
		}

		public override bool PuedePromover(Accion accion)
		{
			return accion == Accion.Publicar;
		}
	}
}