// <summary> /// Verifica si la sesión es valida. En caso negativo, desloguea al usuario. /// Caso pensado: Se deshabilita un usuario logueado y, en consecuencia, se cierra su sesion a nivel base de datos, pero no a nivel aplicacion(porque es imposible) /// Entonces al llamar este metodo siempre antes de cualquier operación, validamos que ningín usuario deshabilitado pueda afectar la informacion del sistema. /// </summary> public void VerificarSesion() { if (ManejadorDeSesion.Sesion == null) { throw new ExcepcionSesion("No existe una sesion iniciada."); } if (!_autenticacionUsuario.SesionValida()) { ManejadorDeSesion.Logout(); throw new ExcepcionSesion("Su sesion no es válida, por lo tanto se ha cerrado."); } }
/// <summary> /// Cierra la sesion del usuario /// </summary> public void Logout() { if (ManejadorDeSesion.Sesion == null) { throw new ExcepcionSesion("No existe una sesion iniciada para cerrarla."); } ManejadorDeSesion.Sesion.Fin = DateTime.Now; _autenticacionUsuario.Logout(); ManejadorDeSesion.Logout(); }