Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Domain/Evento.cs @ 94:db4b1e2cae49
Cambio del nombre de la clase Ponente a Persona
Se agrega la clase Cuenta para identificar cada una de las cuentas con que se puede autenticar una persona
Alta Automatica de cuentas de twitter creando la persona
author | Nelo@Kenia.neluz.int |
---|---|
date | Sat, 04 Jun 2011 12:11:17 -0300 |
parents | 26d0513a8410 |
children | 83d76f6e0a3c |
comparison
equal
deleted
inserted
replaced
93:65f0b3d70c18 | 94:db4b1e2cae49 |
---|---|
11 } | 11 } |
12 | 12 |
13 #region Propiedades del Evento | 13 #region Propiedades del Evento |
14 | 14 |
15 private readonly IList<Track> _tracks; | 15 private readonly IList<Track> _tracks; |
16 private Ponente _ponente; | 16 private Persona _persona; |
17 private readonly ICollection<Track> _newTracks = new List<Track>(); | 17 private readonly ICollection<Track> _newTracks = new List<Track>(); |
18 | 18 |
19 /// <summary> | 19 /// <summary> |
20 /// Título del evento | 20 /// Título del evento |
21 /// </summary> | 21 /// </summary> |
42 public virtual short NumeroOrden { get; private set; } | 42 public virtual short NumeroOrden { get; private set; } |
43 | 43 |
44 /// <summary> | 44 /// <summary> |
45 /// Ponente o responsable del evento | 45 /// Ponente o responsable del evento |
46 /// </summary> | 46 /// </summary> |
47 public virtual Ponente Ponente | 47 public virtual Persona Persona |
48 { | 48 { |
49 get { return _ponente; } | 49 get { return _persona; } |
50 private set | 50 private set |
51 { | 51 { |
52 if (value == null && _ponente != null || value != _ponente && _ponente != null) | 52 if (value == null && _persona != null || value != _persona && _persona != null) |
53 _ponente.RemoveEvento(this); | 53 _persona.RemoveEvento(this); |
54 if (value != null) | 54 if (value != null) |
55 value.AddEvento(this); | 55 value.AddEvento(this); |
56 _ponente = value; | 56 _persona = value; |
57 } | 57 } |
58 } | 58 } |
59 | 59 |
60 /// <summary> | 60 /// <summary> |
61 /// Track de cambios que ha sufrido el evento | 61 /// Track de cambios que ha sufrido el evento |
71 | 71 |
72 /// <summary> | 72 /// <summary> |
73 /// Propone un evento | 73 /// Propone un evento |
74 /// </summary> | 74 /// </summary> |
75 /// <param name="titulo">Título del evento propuesto</param> | 75 /// <param name="titulo">Título del evento propuesto</param> |
76 /// <param name="ponente">Ponente para evento propuesto</param> | 76 /// <param name="persona">Ponente para evento propuesto</param> |
77 /// <returns></returns> | 77 /// <returns></returns> |
78 public static Evento Proponer(string titulo, Ponente ponente, string urlInvitacion) | 78 public static Evento Proponer(string titulo, Persona persona, string urlInvitacion) |
79 { | 79 { |
80 var evento = new Evento {Titulo = titulo, Ponente = ponente, UrlInvitacion = urlInvitacion}; | 80 var evento = new Evento {Titulo = titulo, Persona = persona, UrlInvitacion = urlInvitacion}; |
81 evento.AddTrack(new Track(evento, Accion.Proponer)); | 81 evento.AddTrack(new Track(evento, Accion.Proponer)); |
82 | 82 |
83 return evento; | 83 return evento; |
84 } | 84 } |
85 | 85 |
86 /// <summary> | 86 /// <summary> |
87 /// Agenda un evento que no estaba propuesto | 87 /// Agenda un evento que no estaba propuesto |
88 /// </summary> | 88 /// </summary> |
89 /// <param name="titulo">Título del evento a agendar</param> | 89 /// <param name="titulo">Título del evento a agendar</param> |
90 /// <param name="ponente">Ponente para el evento</param> | 90 /// <param name="persona">Ponente para el evento</param> |
91 /// <param name="fecha">Fecha de realización del evento</param> | 91 /// <param name="fecha">Fecha de realización del evento</param> |
92 /// <param name="urlInvitacion">Url con la invitación realizada por el ponente</param> | 92 /// <param name="urlInvitacion">Url con la invitación realizada por el ponente</param> |
93 /// <returns></returns> | 93 /// <returns></returns> |
94 public static Evento Agendar(string titulo, Ponente ponente, DateTime fecha, string urlInvitacion) | 94 public static Evento Agendar(string titulo, Persona persona, DateTime fecha, string urlInvitacion) |
95 { | 95 { |
96 var evento = new Evento { Titulo = titulo }; | 96 var evento = new Evento { Titulo = titulo }; |
97 evento.Agendar(ponente, fecha, urlInvitacion); | 97 evento.Agendar(persona, fecha, urlInvitacion); |
98 | 98 |
99 return evento; | 99 return evento; |
100 } | 100 } |
101 | 101 |
102 /// <summary> | 102 /// <summary> |
103 /// Agenda el evento actual | 103 /// Agenda el evento actual |
104 /// </summary> | 104 /// </summary> |
105 /// <param name="ponente">Ponente para el evento</param> | 105 /// <param name="persona">Ponente para el evento</param> |
106 /// <param name="fecha">Fecha de realización del evento</param> | 106 /// <param name="fecha">Fecha de realización del evento</param> |
107 /// <param name="urlInvitacion">Url con la invitación realizada por el ponente</param> | 107 /// <param name="urlInvitacion">Url con la invitación realizada por el ponente</param> |
108 public virtual void Agendar(Ponente ponente, DateTime? fecha, string urlInvitacion) | 108 public virtual void Agendar(Persona persona, DateTime? fecha, string urlInvitacion) |
109 { | 109 { |
110 Ponente = ponente; | 110 Persona = persona; |
111 Fecha = fecha; | 111 Fecha = fecha; |
112 UrlInvitacion = urlInvitacion; | 112 UrlInvitacion = urlInvitacion; |
113 AddTrack(new Track(this, Accion.Agendar)); | 113 AddTrack(new Track(this, Accion.Agendar)); |
114 } | 114 } |
115 | 115 |
116 public virtual void Actualizar(Ponente ponente, DateTime? fecha, string urlInvitacion) | 116 public virtual void Actualizar(Persona persona, DateTime? fecha, string urlInvitacion) |
117 { | 117 { |
118 Ponente = ponente; | 118 Persona = persona; |
119 Fecha = fecha; | 119 Fecha = fecha; |
120 UrlInvitacion = urlInvitacion; | 120 UrlInvitacion = urlInvitacion; |
121 | 121 |
122 AddTrack(new Track(this, Accion.Modificar)); | 122 AddTrack(new Track(this, Accion.Modificar)); |
123 } | 123 } |