static int Main(string[] args) { if (args.Count() > 0) { string gitHubUserName = args[0]; try { GitHubUserData userData = RetrieveUserDataAsync(gitHubUserName).Result; HaloDBHelpers.UpdateUserAsync(userData, DBClientSingleton.Instance.Get()).Wait(); return(0); } catch (Exception e) { Console.WriteLine("Exception caught: " + e.ToString()); return(-1); } } else { JobHostConfiguration config = new JobHostConfiguration(); config.StorageConnectionString = ConfigurationManager.AppSettings["WebJobStorage"]; config.DashboardConnectionString = null; config.Queues.BatchSize = 1; config.UseCore(); JobHost host = new JobHost(config); host.RunAndBlock(); return(0); } }
public static async Task ProcessQueueMessage( [QueueTrigger("giteventprocessorqueue")] string jsonMessagePayloadString, [Blob("containername/blobname")] TextWriter writer) { JsonMessagePayload messagePayload = JsonConvert.DeserializeObject <JsonMessagePayload>(jsonMessagePayloadString); if (messagePayload == null || string.IsNullOrWhiteSpace(messagePayload.gitHubUserName)) { return; } Console.WriteLine("ProcessQueueMessage - Retrieving data for gitHubUserName: " + messagePayload.gitHubUserName); GitHubUserData userData = await RetrieveUserDataAsync(messagePayload.gitHubUserName); await HaloDBHelpers.UpdateUserAsync(userData, DBClientSingleton.Instance.Get()); return; }