private IUser AddUserToUserList(string ipAddress, string userId, string password) { IUser user; mutex.WaitOne(); try { UnlinkIpAddress(ipAddress); IKnownUser knownUser = knownUserFactory.Create(ipAddress, userId, password); userList.Add(knownUser); user = userFactory.CreateUserFromKnownUser(knownUser); } finally { mutex.ReleaseMutex(); } return(user); }