/// <summary> /// Удаляет закешированное описание пользователя с заданным наименованием /// </summary> /// <param name="sUserName"></param> public void FlushUser(string sUserName) { XUser user = (XUser)m_AuthenticatedUsers[sUserName]; if (user != null) { user.SetFlushed(true); } }
/// <summary> /// Возвращает описание пользователя по его наименованию /// </summary> /// <param name="sUserName">Наименование пользователя приложения</param> /// <remarks> /// Если описание было сброшено (Flush), то оно будет переполучено от SecurityProvider'a /// </remarks> /// <returns></returns> public XUser GetXUser(string sUserName) { XUser user = (XUser)m_AuthenticatedUsers[sUserName]; if (user == null) { user = m_SecurityProvider.CreateUser(sUserName); Debug.Assert(user != null); if (user == null) { throw new XSecurityProviderErrorImplementationException("SecurityProvider.CreateUser вернул null!"); } m_AuthenticatedUsers[sUserName] = user; } else if (user.IsFlushed) { m_SecurityProvider.UpdateUser(user); user.SetFlushed(false); } return(user); }