Hi Tony, I will open up a support ticket, thanks.
On Feb 12, 8:46 pm, "Tony (Google)" <[email protected]> wrote: > Hi Fred, > > Can you raise a support ticket so we can work on this in private? I > need to know your domain info to test your code. Instructions can be > found under the Support tab. > > Thanks, > > --Tony > > On Feb 12, 10:42 am, NCCFred <[email protected]> wrote: > > > > > TYPO from above. > > The account is "acslib2", not "acslab2". It's correct in the code > > sample, but not in the first line I wrote. > > > Please let me know what you find, thanks. > > > On Feb 12, 1:36 pm, NCCFred <[email protected]> wrote: > > > > The user account I'm trying is "acslab2" - I'm putting that into an > > > array. > > > > using System; > > > using System.Collections.Generic; > > > using System.Linq; > > > using System.Text; > > > using System.Collections; > > > using System.Data.SqlClient; > > > using System.Data; > > > using System.Threading; > > > using Google.GData.Apps; > > > using Google.GData.Extensions; > > > using Google.GData.Extensions.Apps; > > > using Google.GData.Client; > > > using System.IO; > > > > namespace Listof100users > > > { > > > class Program > > > { > > > > static void Main(string[] args) > > > { > > > ArrayList topHolder = new ArrayList(); > > > ArrayList Students = new ArrayList(); > > > > // Only giving it one value to test > > > // > > > topHolder.Add("acslib2"); > > > > GoogleToken.InitService(); > > > > for (int i = 0; i < topHolder.Count; i++) > > > { > > > Console.WriteLine("Top Holder is: " + topHolder > > > [i].ToString()); > > > > try > > > { > > > UserFeed feed = GoogleToken.GoogleConnect > > > ().RetrievePageOfUsers( topHolder[i].ToString() ); > > > > for (int k = 0; k < feed.Entries.Count; k++) > > > { > > > UserEntry entry = feed.Entries[k] as > > > UserEntry; > > > Students.Add(entry.Login.UserName + "," + > > > entry.Name.GivenName + "," + entry.Name.FamilyName); > > > Console.WriteLine(entry.Login.UserName + "," + > > > entry.Name.GivenName + "," + entry.Name.FamilyName); > > > } > > > > Console.WriteLine("Count is: " + > > > Program.Students.Count); > > > > } // try > > > > catch (Exception e) > > > { > > > Console.WriteLine(e.ToString()); > > > } > > > } // for > > > > foreach (string s in Students) > > > { > > > writer.WriteLine( s.ToString() ); > > > } > > > > writer.Close(); > > > > } // main > > > > } // class > > > > class GoogleToken > > > { > > > > public static string DOMAIN = "XXXXXXXX.edu"; > > > public static string USERNAME = "XXXXXXXXX.edu"; > > > public static string PASSWORD = "XXXXX"; > > > > public static string token = null; > > > > public static Service service; > > > public static AppsService APPSservice; > > > > public static void InitService() > > > { > > > > service = new Service(AppsNameTable.GAppsService, > > > "APP-1.0", AppsNameTable.GAppsAgent); > > > > service.setUserCredentials(USERNAME, PASSWORD); > > > > // > > > // Check to see if file exists, if not create a file with > > > the token > > > // > > > if (File.Exists("C:\\token.txt")) > > > { > > > DateTime fileCreate = File.GetCreationTime("C:\ > > > \token.txt"); > > > > // Make sure it was less than 23 hours, else we need a > > > new token > > > if ((DateTime.Now - fileCreate).TotalHours < 23) > > > { > > > // Open the file, read and set the token > > > StreamReader read = new StreamReader("C:\ > > > \token.txt"); > > > token = read.ReadLine(); > > > read.Close(); > > > } > > > // Past 24 Hours, get a new token > > > // > > > else > > > { > > > token = service.QueryAuthenticationToken(); > > > > // Delete the old C:\token.txt file > > > // > > > File.Delete("C:\\token.txt"); > > > > StreamWriter write = new StreamWriter("C:\ > > > \token.txt"); > > > write.WriteLine(token); > > > write.Close(); > > > } > > > > } > > > > else // No token.txt file, get a token and store it in > > > the file > > > { > > > token = service.QueryAuthenticationToken(); > > > > StreamWriter write = new StreamWriter("C:\ > > > \token.txt"); > > > write.WriteLine(token); > > > write.Close(); > > > } > > > > APPSservice = new AppsService(DOMAIN, token); > > > > } > > > > public static AppsService GoogleConnect() > > > { > > > // > > > // Return the Google Apps Object > > > // > > > return (APPSservice); > > > > } > > > } // class > > > > } // namespace > > > > On Feb 11, 8:38 pm, "Tony (Google)" <[email protected]> wrote: > > > > > Hi Fred, > > > > > Can we share with us the code you use to make the call to > > > > RetrievePageOfUsers with the username at record 22,601? Please feel > > > > free to raise a support request if you prefer to do it privately. > > > > > Thanks, > > > > > --Tony > > > > > On Feb 11, 5:30 pm, NCCFred <[email protected]> wrote: > > > > > > Hi Julian, > > > > > > I got the same result today using a single threaded application. > > > > > Here's a summary of my application and I guess we can try and pin > > > > > point what my error is. > > > > > > I have a SQL Server 2005 database base table called "GoogleMaster". > > > > > In this table I keep an exact copy of the accounts we have with > > > > > Google, this contains username, firstname, lastname, password, term > > > > > and timestamp. I also created a SQL stored procedure that will return > > > > > the first value or "TOP" for every 100 users and store that in an > > > > > array. > > > > > > I believe we have 22,689 email accounts with Google, so the length of > > > > > my array should be 227, to illustrate: > > > > > > array[0] = starting username for accounts 1-100 (length = 100) > > > > > array[1] = starting username for accounts 101-200 (length = 100) > > > > > .. > > > > > array[225] = starting username for accounts 22,501-22,600 (length = > > > > > 100) > > > > > array[226] = starting username for accounts 22,601-22,689 (length = > > > > > 89) <=== This is my problem > > > > > > In my single thread model I use a for loop: > > > > > > for(int z=0; z < array.Length; z++) { > > > > > > UserFeedObject = RetrievePageOfUsers( array[z].ToString() ); > > > > > // Code to add UserFeedObject's firstname to another array > > > > > > } > > > > > > Everything goes as planned, just as a visual I have the length of the > > > > > array print on the screen as the data gets added to it. When it's > > > > > time for the remaining 89 records - it never ends successfully and > > > > > times out. That's why in my first post I was wondering if the > > > > > resulting UserFeed is less than 100 records will there be a problem. > > > > > I can email you or post my code for you to look at. > > > > > > As another test I made a simple application that only made one > > > > > function call to RetrievePageOfUsers with the username at record > > > > > number 22,601 and I got the same result. > > > > > > Does this help? > > > > > > Would you mind posting your solution, maybe I'm totally missing > > > > > something here. > > > > > > On Feb 11, 8:56 am, "Julian (Google)" <[email protected]> wrote: > > > > > > > Hi, > > > > > > > I am not able to reproduce the problem with a single thread using > > > > > > the .NET client library. Please, share more details of your > > > > > > implementation if you can. > > > > > > > Cheers, > > > > > > Julian. > > > > > > > On Feb 10, 7:06 pm, NCCFred <[email protected]> wrote: > > > > > > > > Hello Group, > > > > > > > > I had a question about the RetrievePageOfUsers function. I > > > > > > > understand > > > > > > > the function takes a starting username and it will return a list > > > > > > > of > > > > > > > 100 users – starting from the given name, inclusively. > > > > > > > > I’ve had some odd behavior in my application and narrowed it down > > > > > > > to > > > > > > > this function. My application is a multi-threaded GUI in C# that > > > > > > > spawns a maximum of 10 concurrent threads to Google while > > > > > > > iterating > > > > > > > through an array that contains all beginning account Id’s for > > > > > > > each set > > > > > > > of 100 users (our domain has 22,673 email accounts). I noticed > > > > > > > the > > > > > > > last call of this function, which does not return 100 accounts > > > > > > > because > > > > > > > only 73 are remaining will eventually time out. > > > > > > > > Why would this be happening? Is there something in the > > ... > > read more »- Hide quoted text - > > - Show quoted text - --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Apps APIs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/google-apps-apis?hl=en -~----------~----~----~----~------~----~------~--~---
