Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Domain/IdentityContext.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 | 3059a5f8930f |
children | 0bca45e1e664 |
comparison
equal
deleted
inserted
replaced
93:65f0b3d70c18 | 94:db4b1e2cae49 |
---|---|
1 using AltNetHispano.Agendas.Domain.Exceptions; | 1 using System; |
2 using AltNetHispano.Agendas.Domain.Exceptions; | |
3 using AltNetHispano.Agendas.Domain.Repositories; | |
2 | 4 |
3 namespace AltNetHispano.Agendas.Domain | 5 namespace AltNetHispano.Agendas.Domain |
4 { | 6 { |
5 public class IdentityContext | 7 public class IdentityContext |
6 { | 8 { |
7 private static ISeguridad _current; | 9 private static ISeguridad _current; |
10 private static IPersonaRepository _personaRepository; | |
8 | 11 |
9 public static ISeguridad Current | 12 public static void Init(ISeguridad seguridad, IPersonaRepository personaRepository) |
10 { | 13 { |
11 private get | 14 _current = seguridad; |
15 _personaRepository = personaRepository; | |
16 } | |
17 | |
18 private static ISeguridad Current | |
19 { | |
20 get | |
12 { | 21 { |
13 if (_current == null) | 22 if (_current == null) |
14 throw new IdentityContextNotConfiguredException(); | 23 throw new IdentityContextNotConfiguredException(); |
15 return _current; | 24 return _current; |
16 } | 25 } |
17 set { _current = value; } | |
18 } | 26 } |
19 | 27 |
20 public static string GetUserName() | 28 public static string GetUserName() |
21 { | 29 { |
22 string username = Current.GetUserName(); | 30 string username = Current.GetUserName(); |
23 if (string.IsNullOrWhiteSpace(username)) | 31 if (string.IsNullOrWhiteSpace(username)) |
24 throw new UsuarioNoAutenticadoException(); | 32 throw new UsuarioNoAutenticadoException(); |
25 return username; | 33 return username; |
26 } | 34 } |
35 | |
36 public static Persona GetUsuario() | |
37 { | |
38 var cuenta = _personaRepository.GetCuenta(IdentityProviderEnum.Twitter, GetUserName()); | |
39 return cuenta != null ? cuenta.Persona : null; | |
40 } | |
27 } | 41 } |
28 } | 42 } |