public static void Initialize(IJobServiceFactory serviceFactory) { lock (InitializationLock) { if (DefaultMediator != null) { return; } DefaultMediator = new MassiveJobsMediator(serviceFactory); } }
public static void Deinitialize() { lock (InitializationLock) { if (DefaultMediator == null) { return; } DefaultMediator.SafeDispose(); DefaultMediator = null; } }
public void Build(bool startWorkers = true) { if (!_serviceProvider.ServiceCollection.IsServiceRegistered <ITimer>()) { _serviceProvider.ServiceCollection.RegisterScoped <ITimer, DefaultTimer>(); } if (!_serviceProvider.ServiceCollection.IsServiceRegistered <ITimeProvider>()) { _serviceProvider.ServiceCollection.RegisterSingleton <ITimeProvider, DefaultTimeProvider>(); } ValidateAndCompile(); MassiveJobsMediator.Initialize(_serviceProvider.ServiceFactory); if (startWorkers) { MassiveJobsMediator.DefaultInstance.StartJobWorkers(); } }
public static void DisposeJobs() { MassiveJobsMediator.Deinitialize(); }