internal static async Task PushServerUpdatesAsync()
{
var logger = LogManagerFactory.DefaultLogManager.GetLogger<ReportItem>();
logger.Info("Pushing server updates...");
// get all of the changed reports...
var reports = await GetLocallyChangedReportsAsync();
// how many?
logger.Info("Found '{0}' changed report(s)...", reports.Count());
// if nothing, quit...
if (!(reports.Any()))
return;
// otherwise...
var tasks = new List<Task>();
foreach (var report in reports)
tasks.Add(report.PushServerUpdateAsync());
// wait...
await Task.WhenAll(tasks);
// finished...
logger.Info("Finished pushing updates.");
}