public async Task Run() { try { runWatch = new System.Diagnostics.Stopwatch(); runWatch.Start(); if (string.IsNullOrEmpty(InstanceId)) { wfApp.Run(); InstanceId = wfApp.Id.ToString(); state = "running"; await Save(); } else { foreach (var b in Bookmarks) { if (b.Value != null && !string.IsNullOrEmpty(b.Value.ToString())) { wfApp.ResumeBookmark(b.Key, b.Value); } } if (Bookmarks.Count() == 0) { wfApp.Run(); } state = "running"; await Save(); } } catch (Exception ex) { Log.Error(ex, ""); hasError = true; isCompleted = true; //isUnloaded = true; state = "failed"; Exception = ex; errormessage = ex.Message; await Save(); if (runWatch != null) { runWatch.Stop(); } OnIdleOrComplete?.Invoke(this, EventArgs.Empty); } }
public override bool SaveBookmarks(out NSError error) { InvokeOnMainThread(() => { var alert = new UIAlertView("Bookmark Subclass Message", string.Format("Intercepted bookmark saving; current bookmarks are: {0}", Bookmarks.Count()), null, "Ok", null); alert.Show(); }); return(base.SaveBookmarks(out error)); }