private void SelfRestart(NativeActivityContext context, ActivityInstance target) { RestartActivityContext restartContext = restartActivityContext.Get(context); if (!restartContext.NeedsRestart) { _structuredTracer.DebugMessage("Executing activity '" + this.DisplayName + "', local machine (" + Environment.MachineName + ") has been restarted."); return; } _structuredTracer.DebugMessage("Executing activity '" + this.DisplayName + "', local machine (" + Environment.MachineName + ") is self-restarting"); base.Execute(context); }
private void PersistAndRestart(NativeActivityContext executionContext) { if (DisableSelfRestart) { _structuredTracer.DebugMessage("Executing activity '" + this.DisplayName + "', resume of workflow after restart was disabled."); return; } _structuredTracer.DebugMessage("Executing activity '" + this.DisplayName + "' scheduling persistence for workflow resumption after restart."); RestartActivityContext c = new RestartActivityContext(); c.NeedsRestart = true; restartActivityContext.Set(executionContext, c); executionContext.ScheduleActivity(persistActivity, SelfRestart); }
private void PersistAndRestart(NativeActivityContext executionContext) { if (DisableSelfRestart) { _structuredTracer.DebugMessage("Executing activity '" + this.DisplayName + "', resume of workflow after restart was disabled."); return; } _structuredTracer.DebugMessage("Executing activity '" + this.DisplayName + "' scheduling persistence for workflow resumption after restart."); RestartActivityContext c = new RestartActivityContext(); c.NeedsRestart = true; restartActivityContext.Set(executionContext, c); executionContext.ScheduleActivity(persistActivity, SelfRestart); }