annotate 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
rev   line source
101
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
1 using AltNetHispano.Agendas.Domain.Exceptions;
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
2
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
3 namespace AltNetHispano.Agendas.Domain
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
4 {
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
5 public class EventoPropuestoState : EventoState
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
6 {
104
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
7 private EventoPropuestoState()
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
8 {
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
9 }
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
10
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
11 private static readonly EventoState _instance = new EventoPropuestoState();
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
12 public static EventoState GetInstance()
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
13 {
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
14 return _instance;
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
15 }
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
16
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
17 private const string Descripcion = "Propuesto";
101
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
18
103
23325dddddcc Persistencia del estado de los eventos
jorge.rowies
parents: 101
diff changeset
19 public override void Promover(Evento evento, Accion accion)
101
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
20 {
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
21 switch (accion)
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
22 {
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
23 case Accion.Agendar:
104
c5034884c7d7 refactor para que los estados sean singletons
jorge.rowies
parents: 103
diff changeset
24 evento.SetEstado(EventoAgendadoState.GetInstance());
103
23325dddddcc Persistencia del estado de los eventos
jorge.rowies
parents: 101
diff changeset
25 evento.AddTrack(new Track(evento, Accion.Agendar));
101
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
26 break;
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
27 default:
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
28 throw new AccionNoSoportadaException(this.GetType(), accion);
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
29 }
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
30 }
103
23325dddddcc Persistencia del estado de los eventos
jorge.rowies
parents: 101
diff changeset
31
23325dddddcc Persistencia del estado de los eventos
jorge.rowies
parents: 101
diff changeset
32 public override string GetDescripcion()
23325dddddcc Persistencia del estado de los eventos
jorge.rowies
parents: 101
diff changeset
33 {
23325dddddcc Persistencia del estado de los eventos
jorge.rowies
parents: 101
diff changeset
34 return Descripcion;
23325dddddcc Persistencia del estado de los eventos
jorge.rowies
parents: 101
diff changeset
35 }
101
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
36 }
9bfdd5bf3ad2 Manejo de estados de los Eventos mediante state pattern (primer version)
jorge.rowies
parents:
diff changeset
37 }