public async Task Run([OrchestrationTrigger] DurableOrchestrationContext context, ILogger log) { var weekModel = context.GetInput <WeekModel>(); var resultModel = new ResultModel(); do { var weekResultModel = await context.CallActivityAsync <ResultModel>(nameof(WeekActivity), weekModel); resultModel.AddResult(weekResultModel); }while (!resultModel.Finished); if (_options.DraftShiftsEnabled && resultModel.CreatedCount > 0) { var shareModel = new ShareModel { TeamId = weekModel.TeamId, StartDate = weekModel.StartDate, EndDate = weekModel.StartDate.AddWeek() }; await context.CallActivityAsync(nameof(ShareActivity), shareModel); } }
public async Task Run( [OrchestrationTrigger] DurableOrchestrationContext context, ILogger log) { var clearScheduleModel = context.GetInput <ClearScheduleModel>(); log.LogClearStart(clearScheduleModel); var resultModel = new ResultModel(); do { var activityResultModel = await context.CallActivityAsync <ResultModel>(nameof(ClearShiftsActivity), clearScheduleModel); resultModel.AddResult(activityResultModel); }while (!resultModel.Finished && ++resultModel.IterationCount < _options.ClearScheduleMaxAttempts); log.LogClearEnd(clearScheduleModel, resultModel); }