コード例 #1
0
        public void Init()
        {
            _cts           = new CancellationTokenSource(TimeSpan.FromSeconds(15));
            _loggerFactory = Substitute.For <ILoggerFactory>();
            _logger        = Substitute.For <ILogger <QuidjiboServer> >();
            _loggerFactory.CreateLogger <QuidjiboServer>().Returns(_logger);

            _quidjiboConfiguration = Substitute.For <IQuidjiboConfiguration>();

            _workProviderFactory = Substitute.For <IWorkProviderFactory>();
            _workProvider        = Substitute.For <IWorkProvider>();
            _workProviderFactory.CreateAsync(Arg.Any <string>(), Arg.Any <CancellationToken>()).Returns(Task.FromResult(_workProvider));
            _workProviderFactory.PollingInterval.Returns(1);

            _scheduleProviderFactory = Substitute.For <IScheduleProviderFactory>();
            _scheduleProvider        = Substitute.For <IScheduleProvider>();
            _scheduleProviderFactory.CreateAsync(Arg.Any <string[]>(), Arg.Any <CancellationToken>()).Returns(Task.FromResult(_scheduleProvider));
            _scheduleProviderFactory.PollingInterval.Returns(1);

            _progressProviderFactory = Substitute.For <IProgressProviderFactory>();
            _progressProvider        = Substitute.For <IProgressProvider>();
            _progressProviderFactory.CreateAsync(Arg.Any <string[]>(), Arg.Any <CancellationToken>()).Returns(Task.FromResult(_progressProvider));

            Substitute.For <IWorkDispatcher>();
            Substitute.For <IPayloadSerializer>();
            _cronProvider = Substitute.For <ICronProvider>();
            _pipeline     = Substitute.For <IQuidjiboPipeline>();


            _sut = new QuidjiboServer(_loggerFactory, _quidjiboConfiguration, _workProviderFactory, _scheduleProviderFactory, _progressProviderFactory, _cronProvider, _pipeline);
        }
コード例 #2
0
 public QuidjiboClient(
     ILoggerFactory loggerFactory,
     IWorkProviderFactory workProviderFactory,
     IScheduleProviderFactory scheduleProviderFactory,
     IPayloadSerializer payloadSerializer,
     IPayloadProtector payloadProtector,
     ICronProvider cronProvider)
 {
     _logger = loggerFactory.CreateLogger(GetType());
     _workProviderFactory     = workProviderFactory;
     _scheduleProviderFactory = scheduleProviderFactory;
     _payloadSerializer       = payloadSerializer;
     _payloadProtector        = payloadProtector;
     _cronProvider            = cronProvider;
 }
コード例 #3
0
ファイル: QuidjiboServer.cs プロジェクト: noahhai/Quidjibo
 public QuidjiboServer(
     ILoggerFactory loggerFactory,
     IQuidjiboConfiguration quidjiboConfiguration,
     IWorkProviderFactory workProviderFactory,
     IScheduleProviderFactory scheduleProviderFactory,
     IProgressProviderFactory progressProviderFactory,
     ICronProvider cronProvider,
     IQuidjiboPipeline quidjiboPipeline)
 {
     _logger = loggerFactory.CreateLogger <QuidjiboServer>();
     _workProviderFactory     = workProviderFactory;
     _scheduleProviderFactory = scheduleProviderFactory;
     _quidjiboConfiguration   = quidjiboConfiguration;
     _cronProvider            = cronProvider;
     _quidjiboPipeline        = quidjiboPipeline;
     _progressProviderFactory = progressProviderFactory;
     Worker = $"{Environment.GetEnvironmentVariable("COMPUTERNAME")}-{Guid.NewGuid()}";
 }
コード例 #4
0
        public void Init()
        {
            _loggerFactory           = Substitute.For <ILoggerFactory>();
            _scheduleProviderFactory = Substitute.For <IScheduleProviderFactory>();
            _scheduleProvider        = Substitute.For <IScheduleProvider>();
            _workProviderFactory     = Substitute.For <IWorkProviderFactory>();
            _workProvider            = Substitute.For <IWorkProvider>();
            _payloadSerializer       = Substitute.For <IPayloadSerializer>();
            _payloadProtector        = Substitute.For <IPayloadProtector>();
            _cronProvider            = Substitute.For <ICronProvider>();

            _sut = new QuidjiboClient(
                _loggerFactory,
                _workProviderFactory,
                _scheduleProviderFactory,
                _payloadSerializer,
                _payloadProtector,
                _cronProvider);
            _sut.Clear();
        }
コード例 #5
0
 /// <summary>
 ///     Configure a custome Work WorkProvider Factory. Typically this is done in an extension method provided by the
 ///     integration implmentation
 /// </summary>
 /// <param name="factory"></param>
 /// <returns></returns>
 public QuidjiboBuilder ConfigureWorkProviderFactory(IWorkProviderFactory factory)
 {
     WorkProviderFactory = factory;
     return(this);
 }