private async Task <SiteStatusResult> CheckSite(MonitoredSite site) { var status = new SiteStatusResult { SiteId = site.Id, Url = site.Url }; var client = new WebClient(); var response = await client.DownloadStringTaskAsync(site.Url).ContinueWith(async(t) => { status.Status = t.IsFaulted ? SiteStatus.Down.ToString() : SiteStatus.Up.ToString(); // put the URL onto the queue if the site is online if (!t.IsFaulted) { var account = CloudStorageAccount.DevelopmentStorageAccount; var queue = account.CreateCloudQueueClient().GetQueueReference("incoming"); queue.CreateIfNotExists(); queue.AddMessage(new CloudQueueMessage(status.Url)); } }); return(status); }
public ActionResult DeleteConfirmed(int id) { MonitoredSite monitoredsite = db.MonitoredSites.Find(id); db.MonitoredSites.Remove(monitoredsite); db.SaveChanges(); return(RedirectToAction("Index")); }
// // GET: /Sites/Delete/5 public ActionResult Delete(int id = 0) { MonitoredSite monitoredsite = db.MonitoredSites.Find(id); if (monitoredsite == null) { return(HttpNotFound()); } return(View(monitoredsite)); }
public ActionResult Edit(MonitoredSite monitoredsite) { if (ModelState.IsValid) { db.Entry(monitoredsite).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(monitoredsite)); }
public ActionResult Create(MonitoredSite monitoredsite) { if (ModelState.IsValid) { db.MonitoredSites.Add(monitoredsite); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(monitoredsite)); }
private async Task <SiteStatusResult> CheckSite(MonitoredSite site) { var status = new SiteStatusResult { SiteId = site.Id, Url = site.Url }; var client = new WebClient(); var response = await client.DownloadStringTaskAsync(site.Url).ContinueWith(async(t) => { status.Status = t.IsFaulted ? SiteStatus.Down.ToString() : SiteStatus.Up.ToString(); }); return(status); }
private async Task <SiteStatusResult> CheckSite(MonitoredSite site) { var status = new SiteStatusResult { SiteId = site.Id, Url = site.Url }; var client = new WebClient(); var response = await client.DownloadStringTaskAsync(site.Url).ContinueWith(async(t) => { status.Status = t.IsFaulted ? SiteStatus.Down.ToString() : SiteStatus.Up.ToString(); // put the URL onto the queue if the site is online //if (!t.IsFaulted) //{ // var account = CloudStorageAccount.DevelopmentStorageAccount; // var queue = account.CreateCloudQueueClient().GetQueueReference("incoming"); // queue.CreateIfNotExists(); // queue.AddMessage(new CloudQueueMessage(status.Url)); //} // send the results to the service bus var connectionString = ConfigurationManager .AppSettings["serviceBusConnectionString"]; ServiceBusHelper.ServiceBus .Setup(connectionString, "sitemonitr") .Publish <SitePingResult>(new SitePingResult { Id = site.Id, Url = site.Url, Status = status.Status, TimeStamp = DateTime.Now }); }); return(status); }