view Agendas/trunk/src/Agendas.Domain/EventoPropuestoState.cs @ 120:c3573defd18f

Agregado de Fecha, Usuario y Successful en TrackLog Modificacion de publicador de blog para usar TrackLog Agregado de TrackLog en el test de crud de eventos Fix en publicador de twitter para que no twitee si ya se encuentra en TrackLog pero con Successful en true
author Jorge@Jorge-PC
date Fri, 24 Jun 2011 21:18:21 -0300
parents c5034884c7d7
children 53bcd338542b
line wrap: on
line source

using AltNetHispano.Agendas.Domain.Exceptions;

namespace AltNetHispano.Agendas.Domain
{
  public class EventoPropuestoState : EventoState
  {
    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(EventoAgendadoState.GetInstance());
          evento.AddTrack(new Track(evento, Accion.Agendar));
          break;
        default:
          throw new AccionNoSoportadaException(this.GetType(), accion);
      }
    }

    public override string GetDescripcion()
    {
      return Descripcion;
    }
  }
}