/// <summary> /// Desde este metodo será la unica forma de crear una nueva session para un tenant logeado /// </summary> /// <param name="empresa"></param> /// <param name="usuario"></param> /// <returns></returns> public static Tenant Create(string empresa, string usuario) { //validaciones if (empresa == null) { throw new ArgumentNullException("empresa"); } if (usuario == null) { throw new ArgumentNullException("usuario"); } string tenantCustomerCookieValue = CookieUtils.GetCurrentCookieCustomerValue(); bool empresaCargada = !string.IsNullOrEmpty(tenantCustomerCookieValue); var tenantUserCookieValue = CookieUtils.GetCookieValue(TenantWebExample.TenantConstants.CookieUser); bool userCargado = !string.IsNullOrEmpty(tenantUserCookieValue); if (empresaCargada || userCargado) { throw new Exception(string.Format("El usuario {0} ya se encuentra logeado en la empresa {1}", tenantCustomerCookieValue ?? string.Empty, tenantUserCookieValue ?? string.Empty)); } //aqui pueden encriptar los nombres de la cookie. CookieUtils.CreateCookie(TenantWebExample.TenantConstants.CookieEmpresa, empresa); CookieUtils.CreateCookie(TenantWebExample.TenantConstants.CookieUser, usuario); //Fluent por si se quisiera hacer algo con el tenant actual creado.... return(new Tenant()); }
public static bool IsLogged() { return(!string.IsNullOrEmpty(CookieUtils.GetCurrentCookieCustomerValue())); }