diff Agendas/trunk/src/Agendas.Domain/Evento.cs @ 87:26d0513a8410

A los publicadores les llega la lista de tracks producidos en la acción realizada Quitamos el concepto de Recordador ya que el mismo es un publicador, cuándo publicar es responsabilidad de cada publicador
author nelopauselli
date Fri, 27 May 2011 14:42:38 -0300
parents c76661cff260
children db4b1e2cae49
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Domain/Evento.cs	Wed May 25 01:53:31 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Domain/Evento.cs	Fri May 27 14:42:38 2011 -0300
@@ -14,6 +14,7 @@
 
 		private readonly IList<Track> _tracks;
 		private Ponente _ponente;
+		private readonly ICollection<Track> _newTracks = new List<Track>();
 
 		/// <summary>
 		/// Título del evento
@@ -77,7 +78,7 @@
 		public static Evento Proponer(string titulo, Ponente ponente, string urlInvitacion)
 		{
 			var evento = new Evento {Titulo = titulo, Ponente = ponente, UrlInvitacion = urlInvitacion};
-			evento.AddTracks(new Track(evento, Accion.Proponer));
+			evento.AddTrack(new Track(evento, Accion.Proponer));
 
 			return evento;
 		}
@@ -109,7 +110,7 @@
 			Ponente = ponente;
 			Fecha = fecha;
 			UrlInvitacion = urlInvitacion;
-			AddTracks(new Track(this, Accion.Agendar));
+			AddTrack(new Track(this, Accion.Agendar));
 		}
 
 		public virtual void Actualizar(Ponente ponente, DateTime? fecha, string urlInvitacion)
@@ -118,31 +119,36 @@
 			Fecha = fecha;
 			UrlInvitacion = urlInvitacion;
 
-			AddTracks(new Track(this, Accion.Modificar));
+			AddTrack(new Track(this, Accion.Modificar));
 		}
 
 		public virtual void CambiarTitulo(string titulo)
 		{
 			Titulo = titulo;
-			AddTracks(new Track(this, Accion.CambiarTitulo));
+			AddTrack(new Track(this, Accion.CambiarTitulo));
 		}
 
 		public virtual void Confirmar()
 		{
-			AddTracks(new Track(this, Accion.Confirmar));
+			AddTrack(new Track(this, Accion.Confirmar));
 		}
 
 		public virtual void Publicar()
 		{
-			AddTracks(new Track(this, Accion.Publicar));
+			AddTrack(new Track(this, Accion.Publicar));
 		}
 
 		#endregion
 
-		private void AddTracks(Track track)
+		private void AddTrack(Track track)
 		{
+			_newTracks.Add(track);
 			_tracks.Add(track);
 		}
 
+		public virtual IEnumerable<Track> GetTrackNews()
+		{
+			return _newTracks;
+		}
 	}
 }
\ No newline at end of file