public override void DoWork(Action <string, double> ReportProgress, Action Done) { try { var acc = Speckle.Core.Credentials.AccountManager.GetDefaultAccount(); Tracker.TrackPageview(Tracker.RECEIVE_LOCAL); Parent.Message = "Receiving..."; var Converter = (Parent as ReceiveLocalComponent).Converter; Base @base = null; try { @base = Operations.Receive(localDataId, disposeTransports: true).Result; } catch (Exception e) { RuntimeMessages.Add((GH_RuntimeMessageLevel.Warning, "Failed to receive local data.")); Done(); return; } data = Utilities.ConvertToTree(Converter, @base); } catch (Exception e) { // If we reach this, something happened that we weren't expecting... Log.CaptureException(e); RuntimeMessages.Add((GH_RuntimeMessageLevel.Error, "Something went terribly wrong... " + e.Message)); Parent.Message = "Error"; } Done(); }