# HG changeset patch
# User nelopauselli
# Date 1305588211 10800
# Node ID 3d9e6d56d903631ae705c0c6e24772b8e7f4017b
# Parent 65bbcdd5d35799d0e481ca6a76a6558f2c722f8c
Refactoring del track de cambios de un evento
diff -r 65bbcdd5d357 -r 3d9e6d56d903 Agendas/trunk/src/Agendas.Domain/Agenda.cs
--- a/Agendas/trunk/src/Agendas.Domain/Agenda.cs Mon May 16 20:15:05 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Domain/Agenda.cs Mon May 16 20:23:31 2011 -0300
@@ -64,8 +64,7 @@
public Resultado Proponer(string titulo, string ponenteNombre)
{
Ponente ponente = GetPonente(ponenteNombre);
- var evento = new Evento(titulo);
- evento.Actualizar(ponente);
+ var evento = Evento.Proponer(titulo, ponente);
if (string.IsNullOrWhiteSpace(evento.Titulo))
return new Resultado(false);
@@ -78,15 +77,18 @@
public Resultado Publicar(string titulo, string ponenteNombre, DateTime? fecha)
{
+ if (!fecha.HasValue)
+ return new Resultado(false);
+ if (string.IsNullOrWhiteSpace(ponenteNombre))
+ return new Resultado(false);
+
Ponente ponente = GetPonente(ponenteNombre);
- Evento evento = _eventosRepository.GetPropuestaByTitulo(titulo) ?? new Evento(titulo);
- evento.Publicar(ponente, fecha);
-
- if (!evento.Fecha.HasValue)
- return new Resultado(false);
- if (string.IsNullOrWhiteSpace(evento.Ponente.Nombre))
- return new Resultado(false);
+ Evento evento = _eventosRepository.GetPropuestaByTitulo(titulo);
+ if (evento == null)
+ evento = Evento.Publicar(titulo, ponente, fecha.Value);
+ else
+ evento.Publicar(ponente, fecha);
if (_publicador != null)
_publicador.Publicar(evento);
diff -r 65bbcdd5d357 -r 3d9e6d56d903 Agendas/trunk/src/Agendas.Domain/Agendas.Domain.csproj
--- a/Agendas/trunk/src/Agendas.Domain/Agendas.Domain.csproj Mon May 16 20:15:05 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Domain/Agendas.Domain.csproj Mon May 16 20:23:31 2011 -0300
@@ -55,6 +55,7 @@
+