Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Domain/Persona.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 | |
children | 83d76f6e0a3c |
line wrap: on
line source
using System.Collections.Generic; namespace AltNetHispano.Agendas.Domain { public class Persona : Identificable { private readonly IList<Evento> _eventos; private readonly IList<Cuenta> _cuentas; protected Persona() { //ctor para NHibernate } public Persona(string nombre, string mail, string twitter, string blog) : this(nombre) { Mail = mail; Twitter = twitter; Blog = blog; } public Persona(string nombre) { Nombre = nombre; _eventos = new List<Evento>(); _cuentas=new List<Cuenta>(); } public virtual string Nombre { get; private set; } public virtual string Mail { get; private set; } public virtual string Twitter { get; set; } public virtual string Blog { get; private set; } public virtual IEnumerable<Evento> Eventos { get { return _eventos; } } public virtual void AddEvento(Evento evento) { if (!_eventos.Contains(evento)) _eventos.Add(evento); } public virtual void RemoveEvento(Evento evento) { if (_eventos.Contains(evento)) _eventos.Remove(evento); } public virtual IEnumerable<Cuenta> Cuentas { get { return _cuentas; } } public virtual void AddCuenta(Cuenta cuenta) { if (!_cuentas.Contains(cuenta)) _cuentas.Add(cuenta); cuenta.Persona = this; } public virtual void RemoveCuenta(Cuenta cuenta) { if (_cuentas.Contains(cuenta)) _cuentas.Remove(cuenta); cuenta.Persona = null; } } public enum IdentityProviderEnum { BuiltIn = 1, Twitter = 2 } }