public void StateMonitor(DataDefinition.IExecutor executor) { var themeRepository = Factory.CreateSweepstakeThemeRepository(); foreach (var id in themeRepository.ListWaitToStartIds()) { if (executor.RequestStop) { continue; } using (Util.Locker.Lock(id)) { var theme = themeRepository.Get(id); theme.Start(); themeRepository.Replace(theme); Factory.GetUnitOfWork().Commit(); } } foreach (var id in themeRepository.ListWaitToFinishIds()) { if (executor.RequestStop) { continue; } using (Util.Locker.Lock(id)) { var theme = themeRepository.Get(id); theme.Finish(); themeRepository.Replace(theme); Factory.GetUnitOfWork().Commit(); } } }
public void StateMonitor(DataDefinition.IExecutor executor) { new Services.SweepstakeThemeService(Factory).StateMonitor(executor); }