private static void UserOperations(AppsService service) { // Create a new user. UserEntry insertedEntry = service.CreateUser(testUserName, "Jane", "Doe", "testuser-password"); Console.WriteLine("Created new user '{0}'", insertedEntry.Login.UserName); // Suspend the user. UserEntry suspendedEntry = service.SuspendUser(testUserName); Console.WriteLine("Suspended account for {0}", suspendedEntry.Login.UserName); // Restore the user. UserEntry restoredEntry = service.RestoreUser(testUserName); Console.WriteLine("Restored user {0}", restoredEntry.Login.UserName); // Query for a single user. UserEntry entry = service.RetrieveUser(testUserName); Console.WriteLine("Retrieved user {0}", entry.Login.UserName); // Query for a page of users. UserFeed feed = service.RetrievePageOfUsers(testUserName); entry = feed.Entries[0] as UserEntry; Console.WriteLine("Retrieved page of {0} users, beginning with '{1}'", feed.Entries.Count, entry.Login.UserName); // Query for all users. feed = service.RetrieveAllUsers(); entry = feed.Entries[0] as UserEntry; Console.WriteLine("Retrieved all {0} users in the domain, beginning with '{1}'", feed.Entries.Count, entry.Login.UserName); // Update the user's given name. restoredEntry.Name.GivenName = "John"; UserEntry updatedEntry = service.UpdateUser(entry); Console.WriteLine("Updated user with new given name '{0}'", updatedEntry.Name.GivenName); }
/// <summary> /// Create Google Apps /// </summary> /// <param name="username"></param> private void CreateUserAccount(string username) { if (Util.UserAccountIsExist(username)) return; else { string Email = Util.HashUserName(username).ToLower(); string First = username + "@HF"; string pwd = Util.getRandomPwd(); Google.GData.Apps.AppsService service = new Google.GData.Apps.AppsService("cga.com.cn", "*****@*****.**", "test2006"); service.CreateUser(Email, First, "HoldFast", pwd); System.Threading.Thread.Sleep(3000); /* while (service.RetrieveUser(Email).Login.UserName != Email) { System.Threading.Thread.Sleep(500); } */ Util.AddUserAccount(username, Email, First, "HoldFast", pwd); } }
public DataTable Create_Gmail_Users(AppsService service, GmailUsers gusersyn, SqlDataReader users, LogFile log) { // user alising not created yet // Takes the SQLDataReader and creates all users in the reader // create the table for holding the users final gmail account infomation for email writeback DataTable returnvalue = new DataTable(); DataRow row; returnvalue.TableName = "users"; returnvalue.Columns.Add(gusersyn.Writeback_primary_key); returnvalue.Columns.Add(gusersyn.Writeback_email_field); row = returnvalue.NewRow(); string studentID = ""; string first_name = ""; string last_name = ""; string middle_name = ""; string password = ""; string userNickName = "Aliasing off"; try { while (users.Read()) { try { // using _ as escape character allows illegal characters in username studentID = System.Web.HttpUtility.UrlEncode(users[gusersyn.User_StuID].ToString()).Replace("+", " ").Replace("*", "%2A").Replace("!", "%21").Replace("(", "%28").Replace(")", "%29").Replace("'", "%27").Replace("_", "%5f").Replace(" ", "%20").Replace("%", "_"); // names are less restricitve the only illegal characters are < > = first_name = users[gusersyn.User_Fname].ToString().Replace("<", "%3c").Replace(">", "%3e").Replace("=", "%3d").Replace("%", "%25"); middle_name = users[gusersyn.User_Mname].ToString().Replace("<", "%3c").Replace(">", "%3e").Replace("=", "%3d").Replace("%", "%25"); last_name = users[gusersyn.User_Lname].ToString().Replace("<", "%3c").Replace(">", "%3e").Replace("=", "%3d").Replace("%", "%25"); if (gusersyn.User_password_generate_checkbox == false) { // password needs to bea able to handle special characters password = users[gusersyn.User_password].ToString(); } else { password = GetPassword(14); } if (gusersyn.User_password_short_fix_checkbox == true && password.Length < 8) { password = GetPassword(14); } //Create a new user. UserEntry insertedEntry = service.CreateUser(studentID, first_name, last_name, password); //if (gusersyn.Levenshtein == true) //{ // create user ailas here userNickName = GetNewUserNickname(service, studentID, first_name, middle_name, last_name, 0, false ); row[0] = studentID; if (userNickName != "failure") { row[1] = userNickName + "@" + gusersyn.Admin_domain; } else { row[1] = studentID + "@" + gusersyn.Admin_domain; } returnvalue.Rows.Add(row); row = returnvalue.NewRow(); log.addTrn("Added Gmail user " + studentID + "@" + gusersyn.Admin_domain + " Aliased as " + userNickName + "@" + gusersyn.Admin_domain, "Transaction"); // } } catch (AppsException e) { log.addTrn("Failed adding Gmail user " + studentID + "@" + gusersyn.Admin_domain + " Aliased as " + userNickName + "@" + gusersyn.Admin_domain + " failed " + e.Message.ToString() + " reason " + e.Reason.ToString(), "Error"); } catch (Exception ex) { log.addTrn("Failed adding Gmail user " + studentID + "@" + gusersyn.Admin_domain + " Aliased as " + userNickName + "@" + gusersyn.Admin_domain + " failed " + ex.Message.ToString() + "\n" + ex.StackTrace.ToString(), "Error"); } } } catch (Exception ex) { log.addTrn("Issue adding gmail users datareader is null " + ex.Message.ToString() + "\n" + ex.StackTrace.ToString(), "Error"); } return returnvalue; }