示例#1
0
        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));
        }
示例#2
0
 private IProcessingManager CreateRepeatingOperationProcessingManager(
     IOperation operation,
     IRepeatingOperationProcessingManagerSettings settings)
 {
     return(new RepeatingOperationProcessingManager(
                operation,
                new RepeatingOperationSettings
     {
         EverySeconds = settings.EverySeconds
     }));
 }
示例#3
0
 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");
 }