static void Main(string[] args) { //ENTER CREDENTIALS #region credentials userCreds.Username = ""; userCreds.Password = ""; userCreds.Referer = ""; #endregion // Console.WriteLine("Authenticating user\n"); AGOLClient client = new AGOLClient(userCreds); TokenParameters tokenParams = new TokenParameters(); tokenParams.Username = userCreds.Username; tokenParams.Password = userCreds.Password; tokenParams.Expiration = "540"; tokenParams.Referer = userCreds.Referer; token = client.GenerateToken(tokenParams); foreach (string arg in args) { Console.WriteLine("Uploading shapefile"); AddItemParameters addItemParams = new AddItemParameters(); addItemParams.ItemInfoParameters.Type = "Shapefile"; addItemParams.File = arg; string name = arg.Substring(arg.LastIndexOf('\\') + 1); addItemParams.Filename = name; addItemParams.Async = true; addItemParams.ItemInfoParameters.Title = name.Substring(0, name.Length-4); addItemParams.ItemInfoParameters.Tags = "bulkupload"; JsonAddItemResponse addItemResponse = client.AddItem(addItemParams, token); if (addItemResponse.success) { Console.WriteLine(string.Format("{0}\nid {1}\nPreparing item for publishing...\n", addItemResponse.item, addItemResponse.id)); StatusManager statusManager = new StatusManager(userCreds, token); statusManager.CheckStatusCompletedEvent += new CheckStatusCompletedEventHandler(CheckStatusCompletedEventHandler); Task t = statusManager.CheckStatusAsync(addItemResponse.id); } else { Console.WriteLine(string.Format("Upload failed {0}\n", addItemResponse.id)); } } //press Esc to quit while (true) { if (Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Escape) break; } }
static void Main(string[] args) { if (args.Length > 0) { #region credentials //ENTER CREDENTIALS userCreds.Username = ""; userCreds.Password = ""; userCreds.Referer = ""; #endregion // Console.WriteLine("Authenticating user"); AGOLClient client = new AGOLClient(userCreds); TokenParameters tokenParams = new TokenParameters(); tokenParams.Username = userCreds.Username; tokenParams.Password = userCreds.Password; tokenParams.Expiration = "540"; tokenParams.Referer = userCreds.Referer; token = client.GenerateToken(tokenParams); string file = args[0]; string filename = file.Substring(file.LastIndexOf('\\') + 1); Console.WriteLine("Uploading shapefile"); AddItemParameters addItemParams = new AddItemParameters(); addItemParams.ItemInfoParameters.Type = "Shapefile"; addItemParams.File = file; addItemParams.Filename = filename; addItemParams.Async = true; addItemParams.ItemInfoParameters.Title = filename.Substring(0, filename.Length - 4); addItemParams.ItemInfoParameters.Tags = filename.Substring(0, filename.Length - 4); JsonAddItemResponse addItemResponse = client.AddItem(addItemParams, token); if (addItemResponse.success) { Console.WriteLine(string.Format("{0}\n", addItemResponse.id)); Console.WriteLine("Preparing item for publishing..."); StatusManager statusManager = new StatusManager(userCreds, token); statusManager.CheckStatusCompletedEvent += new CheckStatusCompletedEventHandler(CheckStatusCompletedEventHandler); //TODO: make a synchronous version of CheckStatus(), in case the user wants a blocking call Task t = statusManager.CheckStatusAsync(addItemResponse.id); } else { Console.WriteLine(string.Format("Upload failed {0}\n", addItemResponse.id)); } } else { Console.WriteLine("Please specify a shapefile as an input parameter at runtime"); } //press Esc to quit while (true) { if (Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Escape) break; } }
static void Main(string[] args) { //ENTER CREDENTIALS userCreds.Username = ""; userCreds.Password = ""; userCreds.Referer = ""; // Console.WriteLine("Authenticating user\n"); AGOLClient client = new AGOLClient(userCreds); TokenParameters tokenParams = new TokenParameters(); tokenParams.Username = userCreds.Username; tokenParams.Password = userCreds.Password; tokenParams.Expiration = "540"; tokenParams.Referer = userCreds.Referer; token = client.GenerateToken(tokenParams); foreach (string arg in args) { Console.WriteLine(string.Format("Processing {0}\n", arg)); AddItemParameters addItemParams = new AddItemParameters(); string[] names = arg.Split('/'); string name = string.Format("{0} ({1})", names[names.Length - 2], names[names.Length - 1]); //TODO: create proper lookup to do this string type = String.Empty; switch (names[names.Length - 1].ToLower()) { case "featureserver": type = "Feature Service"; break; case "mapserver": type = "Map Service"; break; case "imageserver": type = "Image Service"; break; case "gpserver": type = "Geoprocessing Service"; break; case "geometryserver": type = "Geometry Service"; break; } addItemParams.Url = arg; addItemParams.ItemInfoParameters.Type = type; addItemParams.Async = true; addItemParams.ItemInfoParameters.Title = name; addItemParams.ItemInfoParameters.Tags = "index"; Console.WriteLine("Indexing service with ArcGIS Online\n"); JsonAddItemResponse addItemResponse = client.AddItem(addItemParams, token); if (addItemResponse.success) { Console.WriteLine(string.Format("Submitted {0}\nid {1}\n", addItemResponse.item, addItemResponse.id)); } else { Console.WriteLine(string.Format("Error indexing item {0}\n", addItemResponse.id)); } } Console.WriteLine("\nPress Esc to quit"); //press Esc to quit while (true) { if (Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Escape) break; } }
static void Main(string[] args) { //ENTER CREDENTIALS #region credentials userCreds.Username = ""; userCreds.Password = ""; userCreds.Referer = ""; #endregion // Console.WriteLine("Authenticating user\n"); AGOLClient client = new AGOLClient(userCreds); TokenParameters tokenParams = new TokenParameters(); tokenParams.Username = userCreds.Username; tokenParams.Password = userCreds.Password; tokenParams.Expiration = "540"; tokenParams.Referer = userCreds.Referer; token = client.GenerateToken(tokenParams); //create all the content foreach (string arg in args) { Console.WriteLine(string.Format("Processing {0}\n", arg)); QueryArcGISServer(arg, String.Empty, null); } Console.WriteLine("\nPress Enter to delete all services"); //press Enter to continue while (true) { if (Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Enter) break; } Console.WriteLine("Deleting..."); //delete all the content again foreach (string folder in folderIds) { JsonFolderResponse response = client.DeleteFolder(new DeleteFolderParameters(), folder, token); if (response.success) { Console.WriteLine(string.Format("Folder {0} {1}", response.folder.title, response.folder.id)); } else { Console.WriteLine(string.Format("Error {0}", response.folder.title)); Console.WriteLine(string.Format("{0}\n", response.folder.id)); } } foreach (string item in itemIds) { JsonItem response = client.DeleteItem(new DeleteItemParameters(), item, token); if (response.success) { Console.WriteLine(string.Format("Item {0}", response.itemId)); } else { Console.WriteLine(string.Format("Error {0}\n", response.itemId)); } } Console.WriteLine("\nPress Esc to quit"); //press Esc to quit while (true) { if (Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Escape) break; } }