internal String Generate() { // Re-read login status root.Logins.ReadAll(); String result = "["; // Put all users into result list IEnumerator users = root.InstalledUsers.GetEnumerator(); while (users.MoveNext()) { dboInstalledUser user = users.Current as dboInstalledUser; // Do not include service users if (!user.DenyInteractiveLogon) { result += "{\"name\": \"" + user.Name + "\", " + "\"loggedIn\": \"" + IsUserLoggedIn(user.UserNr) + "\", " + "\"databases\": " + ListDatabaseLoggedInto(user.UserNr) + ", " + "\"lastSeenOnline\": \"" + user.LoginDate.ToString() + "\"},"; } } // Remove last comma and add missing bracket before return return(result.Substring(0, result.Length - 1) + "]"); }
private String GetUserName(String userId) { if (userNameCache.Get(userId) != null && userNameCache.Get(userId).Length > 0) { return(userNameCache.Get(userId)); } IEnumerator users = root.InstalledUsers.GetEnumerator(); while (users.MoveNext()) { dboInstalledUser user = users.Current as dboInstalledUser; if (user.ID.Equals(userId)) { userNameCache.Add(userId, user.Name); return(user.Name); } } return(userId); }