/* * public UserSessionInfo Create(UserSessionInfo item) * { * return UserSessionDao.Create(item); * } */ public UserSessionBE Update(UserSessionBE objBE) { objBE.ModifiedOn = App.getDate(); objBE.ModifiedById = objBE.UserId; return(daoUserSession.Update(objBE)); }
public IPrincipal SetPrincipal(Guid guidUserId, string strToken) { var principal = (IPrincipal)ApplicationInstance.GetCache <Principal>(guidUserId.ToString()); if (principal == null) { IUserSession objUserSessionBL = ApplicationInstance.ucApplication.Resolve <IUserSession>(); UserSessionBE session = objUserSessionBL.GetByUser(guidUserId); IUser objUserBL = ApplicationInstance.ucApplication.Resolve <IUser>(); UserBE user = objUserBL.Get(guidUserId); /* * IRole roleModule = ApplicationInstance.Container.Resolve<IRole>(); * List<RoleBE> roles = roleModule.GetByUser(userId); * * IPermission permissionModule = ApplicationInstance.Container.Resolve<IPermission>(); * List<PermissionBE> permissions = permissionModule.GetByUser(userId); */ Session objSession = new Session(); objSession.Create(user, strToken, Settings.PasswordExpirationTime /*, roles, permissions*/, session); return((IPrincipal)ApplicationInstance.GetCache <Principal>(guidUserId.ToString())); } else { return(principal); } }
public void Create(UserBE objUserBE, string strToken, int intSessionTimeInMinutes /*, List<RoleBE> roles, List<PermissionBE> permissions*/, UserSessionBE objUserSessionBE = null) { // crear identidad Identity identity = new Identity(objUserBE); // crear principal Principal principal = new Principal(identity, strToken, intSessionTimeInMinutes /*, roles, permissions*/); // crear o actualizar session en DB if (objUserSessionBE == null) { objUserSessionBE = new UserSessionBE(); objUserSessionBE.Name = objUserBE.Name + ": " + App.getDate().ToString("dd/MM/yyyy HH:mm:ss"); objUserSessionBE.UserId = objUserBE.Id; objUserSessionBE.Token = strToken; objUserSessionBE.Validity = App.getDate().AddMinutes(intSessionTimeInMinutes); objUserSessionBE.StatusId = Guid.Parse(Settings.StatusActiveId); objUserSessionBE.OwnerId = objUserBE.Id; objUserSessionBE.CreatedById = objUserBE.Id; objUserSessionBE.ModifiedById = objUserBE.Id; daoUserSession.Create(objUserSessionBE); } else { objUserSessionBE.Validity = App.getDate().AddMinutes(intSessionTimeInMinutes); objUserSessionBE.ModifiedOn = App.getDate(); objUserSessionBE.ModifiedById = objUserBE.Id; daoUserSession.Update(objUserSessionBE); } // guardar session en memoria ApplicationInstance.SetCache <Principal>(principal.Identification.Id.ToString(), principal, intSessionTimeInMinutes); }
public bool Close(string userId) { bool flag = false; UserSessionBE objBE = objUserSessionBL.GetByUser(Guid.Parse(userId)); if (objBE != null) { objBE.Validity = App.getDate(); this.objUserSessionBL.Update(objBE); ApplicationInstance.DeleteCache <Principal>(Convert.ToString(objBE.UserId.Value)); flag = true; } return(flag); }