comparison Agendas/trunk/src/Agendas.Domain/Agenda.cs @ 4:49b572535156

proponer van publicar van propuesta comportamiento ante excepcion en publicador
author nelopauselli
date Tue, 08 Feb 2011 00:08:49 -0300
parents 5f007e266509
children 2912c1dd0e6b
comparison
equal deleted inserted replaced
3:5f007e266509 4:49b572535156
1 using System; 1 using System;
2 using System.Collections.Generic; 2 using System.Collections.Generic;
3 using AltNetHispano.Agendas.Domain.Exceptions;
3 4
4 namespace AltNetHispano.Agendas.Domain 5 namespace AltNetHispano.Agendas.Domain
5 { 6 {
6 public class Agenda 7 public class Agenda
7 { 8 {
21 public IEnumerable<Evento> Eventos 22 public IEnumerable<Evento> Eventos
22 { 23 {
23 get { return _eventos; } 24 get { return _eventos; }
24 } 25 }
25 26
26
27 public void Publicar(Evento evento) 27 public void Publicar(Evento evento)
28 { 28 {
29 _eventos.Add(evento); 29 if (!evento.Fecha.HasValue)
30 30 throw new ValidationException();
31
31 if (_publicador != null) 32 if (_publicador != null)
32 _publicador.Publicar(evento); 33 _publicador.Publicar(evento);
34 _eventos.Add(evento);
33 } 35 }
36
37 public void Publicar(Van van)
38 {
39 if (string.IsNullOrWhiteSpace(van.Ponente))
40 throw new ValidationException();
41 Publicar(van as Evento);
42 }
43
34 44
35 public void Recordar(Evento evento) 45 public void Recordar(Evento evento)
36 { 46 {
37 if (_recordador != null) 47 if (_recordador != null)
38 _recordador.Recordar(evento); 48 _recordador.Recordar(evento);
39 } 49 }
50
51 public void Proponer(Van van)
52 {
53 if (string.IsNullOrWhiteSpace(van.Titulo))
54 throw new ValidationException();
55 _eventos.Add(van);
56 }
57
58 public IList<Evento> GetEventosPropuestos()
59 {
60 return _eventos;
61 }
40 } 62 }
41 } 63 }