diff Agendas/trunk/src/Agendas.Domain/Agenda.cs @ 11:9d6b28a696d1

corrección en método que verifica la autenticación del usuario
author nelo@MTEySS.neluz.int
date Sun, 13 Mar 2011 19:30:58 -0300
parents c90492faf268
children 05996fa19e04
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Domain/Agenda.cs	Sun Mar 13 18:51:06 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Domain/Agenda.cs	Sun Mar 13 19:30:58 2011 -0300
@@ -29,8 +29,8 @@
 				throw new ValidationException();
 			if (_publicador != null)
 				_publicador.Publicar(evento);
-            if (EsAutenticado(_seguridad))
-                throw new ValidationException();
+            if (NoEstaAutenticado(_seguridad))
+                throw new UsuarioNoAutenticadoException();
             _eventosPublicados.Add(evento);
 		}
 
@@ -51,7 +51,7 @@
 		{
 			if (string.IsNullOrWhiteSpace(van.Titulo))
 				throw new ValidationException();
-            if (EsAutenticado(_seguridad))
+            if (NoEstaAutenticado(_seguridad))
                 throw new ValidationException();
 			_eventosPropuestos.Add(van);
 		}
@@ -66,9 +66,13 @@
             return _eventosPublicados;
         }
 
-        private bool EsAutenticado(ISeguridad seguridad) {
-            return seguridad != null && seguridad.GetPrincipal() != null && seguridad.GetPrincipal().Identity != null
-                && string.IsNullOrWhiteSpace(seguridad.GetPrincipal().Identity.Name);
+        private static bool NoEstaAutenticado(ISeguridad seguridad) {
+            return seguridad == null || seguridad.GetPrincipal() == null || seguridad.GetPrincipal().Identity == null
+                || string.IsNullOrWhiteSpace(seguridad.GetPrincipal().Identity.Name);
         }
     }
+
+    public class UsuarioNoAutenticadoException : Exception
+    {
+    }
 }
\ No newline at end of file