private IProcessingManager BuildProcessingManager(IRepeatingOperationProcessingManagerSettings settings) { var operation = CreateOperation(settings); if (operation == null) { throw new ConfigurationErrorsException($"There were no components found associated with the processing manager. Operation key: {settings.OperationKey}"); } return(CreateRepeatingOperationProcessingManager(operation, settings)); }
private IProcessingManager CreateRepeatingOperationProcessingManager( IOperation operation, IRepeatingOperationProcessingManagerSettings settings) { return(new RepeatingOperationProcessingManager( operation, new RepeatingOperationSettings { EverySeconds = settings.EverySeconds })); }
private IOperation CreateOperation(IRepeatingOperationProcessingManagerSettings settings) { if (ProcessingOperationsConfiguration.OperationFactory != null) { return(ProcessingOperationsConfiguration.OperationFactory.Create(settings.OperationKey)); } if (ProcessingOperationsConfiguration.OperationFactoryFunc != null) { return(ProcessingOperationsConfiguration.OperationFactoryFunc(settings.OperationKey)); } throw new InvalidOperationException( "Operation factory should be configured through the ProcessingOperationsConfiguration"); }