public UnitType Execute(IUpdateContext <GeneratorState> context)
        {
            if (!context.State.ExperimentIsFinished)
            {
                var thingToRun = Workload.GenerateRequest(GeneratorNumber, Iteration);

                context.Logger.LogTrace($"Harness.Generator{GeneratorNumber} issues {thingToRun} ");

                // fork the payload orchestration
                context.ForkOrchestration(thingToRun);

                // schedule next iteration
                context.ScheduleLocalUpdate(DelayBetweenRequests,
                                            new GeneratorIteration()
                {
                    GeneratorNumber      = GeneratorNumber,
                    Iteration            = Iteration + 1,
                    DelayBetweenRequests = DelayBetweenRequests,
                    Workload             = Workload
                });
            }
            else
            {
                context.Logger.LogTrace($"Harness.Generator{GeneratorNumber} is done ");
            }

            return(UnitType.Value);
        }