示例#1
0
文件: Login.cs 项目: juhan/NModel
 public static void Login_Start(User user, Password password)
 {
     if (password == Password.Correct)
         activeLoginRequests = activeLoginRequests.Add(user, LoginStatus.Success);
     else
         activeLoginRequests = activeLoginRequests.Add(user, LoginStatus.Failure);
 }
示例#2
0
文件: Login.cs 项目: juhan/NModel
 public static void Login_Finish(User user, LoginStatus status)
 {
     if (status == LoginStatus.Success)
     {
         Contract.usersLoggedIn = Contract.usersLoggedIn.Add(user);
     }
     else // if status == LoginStatus.Failure
         if (Contract.usersLoggedIn.Contains(user))
             Contract.usersLoggedIn = Contract.usersLoggedIn.Remove(user);
     activeLoginRequests = activeLoginRequests.RemoveKey(user);
 }
示例#3
0
文件: Login.cs 项目: juhan/NModel
 public static bool LogoutEnabled(User user)
 {
     return Contract.usersLoggedIn.Contains(user);
 }
示例#4
0
文件: Login.cs 项目: juhan/NModel
 public static void Logout(User user)
 {
     Contract.usersLoggedIn = Contract.usersLoggedIn.Remove(user);
 }
示例#5
0
文件: Login.cs 项目: juhan/NModel
 public static bool Login_StartEnabled(User user)
 {
     return !activeLoginRequests.ContainsKey(user) && !Contract.usersLoggedIn.Contains(user);
 }
示例#6
0
文件: Login.cs 项目: juhan/NModel
 public static bool Login_FinishEnabled(User user, LoginStatus status)
 {
     return activeLoginRequests.Keys.Contains(user) && activeLoginRequests[user].Equals(status);
 }
示例#7
0
 public static void UpdateInt(User user, [Domain("numbers")] int number)
 {
     userToInt = userToInt.Override(user,number);
 }
示例#8
0
 public static bool ReadIntEnabled(User user, int number)
 {
     return userToInt[user] == number;
 }
示例#9
0
 public static void ReadInt(User user,[Domain("numbers")] int number)
 {
     // Reading a number from the page should not change the state
     // thus the body is empty.
 }