예제 #1
0
        /// <summary>
        /// DIを実行する
        /// </summary>
        /// <param name="utcNow">TimeProviderに渡す日時</param>
        /// <param name="serviceLogger">Service用のロガー</param>
        /// <param name="configures">AppSettingsに追加する項目</param>
        private void DependencyInjection(DateTime utcNow, TestLogger <CleanBlobService> serviceLogger, Dictionary <string, string> configures = null)
        {
            TestDiProviderBuilder builder = new TestDiProviderBuilder();

            // Blob
            builder.ServiceCollection.AddTransient <PrimaryBlob>();

            // Polly
            builder.ServiceCollection.AddSingleton(s => new BlobPolly(s.GetService <AppSettings>()));
            builder.ServiceCollection.AddSingleton(s => new DBPolly(s.GetService <AppSettings>()));

            // Logger
            builder.ServiceCollection.AddSingleton <ILogger <CleanBlobService> >(serviceLogger);

            // Controller生成
            builder.ServiceCollection.AddTransient <BlobCleanController>();

            // Repository生成
            builder.ServiceCollection.AddTransient <IDtDeviceFileRepository, DtDeviceFileRepositoryMock>();
            builder.ServiceCollection.AddTransient <IPrimaryRepository, PrimaryBlobRepositoryMock>();

            builder.ServiceCollection.AddSingleton <ITimeProvider>(UnitTestHelper.CreateTimeProvider(utcNow));

            // 追加の設定項目
            if (configures != null)
            {
                builder.AddConfigures(configures);
            }

            _provider = builder.Build();

            // AppSettings
            _appSettings = _provider.GetService <AppSettings>();

            // DateTimeProvider
            _dateTimeProvider = _provider.GetService <ITimeProvider>() as DateTimeProvider;

            // PrimaryBlob
            _primaryBlob = _provider.GetService <PrimaryBlob>();

            // BlobPolly
            _blobPolly = _provider.GetService <BlobPolly>();

            // DBPolly
            _dBPolly = _provider.GetService <DBPolly>();

            // BlobCleanController
            _controller = _provider.GetService <BlobCleanController>();

            // DtDeviceFileRepository
            _dtDeviceFileRepositoryMock = _provider.GetService <IDtDeviceFileRepository>() as DtDeviceFileRepositoryMock;

            // PrimaryBlobRepository
            _primaryBlobRepositoryMock = _provider.GetService <IPrimaryRepository>() as PrimaryBlobRepositoryMock;
        }
예제 #2
0
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public MtInstallTypeRepository(ILogger <MtInstallTypeRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
예제 #3
0
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public DtAlarmDefPanelDefectPremonitorRepository(ILogger <DtAlarmDefPanelDefectPremonitorRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public DtSmartAnalysisResultRepository(ILogger <DtSmartAnalysisResultRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public DtParentChildConnectRepository(ILogger <DtParentChildConnectRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
예제 #6
0
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public DtPlusServiceBillLogRepository(ILogger <DtPlusServiceBillLogRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
예제 #7
0
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public DtDeliveryGroupRepository(ILogger <DtDeliveryGroupRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public DtAlarmDefTemperatureSensorLogMonitorRepository(ILogger <DtAlarmDefTemperatureSensorLogMonitorRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
 /// <summary>
 /// コンストラクタ
 /// </summary>
 /// <param name="logger">ロガー</param>
 /// <param name="timePrivder">DateTimeの提供元</param>
 /// <param name="dbPolly">DB接続用のPolly</param>
 /// <param name="appSettings">アプリケーション設定</param>
 public DtAlarmDefTubeCurrentDeteriorationPremonitorRepository(ILogger <DtAlarmDefTubeCurrentDeteriorationPremonitorRepository> logger, ITimeProvider timePrivder, DBPolly dbPolly, AppSettings appSettings)
 {
     Assert.IfNull(logger);
     Assert.IfNull(timePrivder);
     Assert.IfNull(dbPolly);
     Assert.IfNull(appSettings);
     _logger      = logger;
     _timePrivder = timePrivder;
     _dbPolly     = dbPolly;
     _appSettings = appSettings;
 }
예제 #10
0
            /// <summary>
            /// 初期化処理
            /// 例外処理を実行するメソッドのフラグと何回目の呼び出しで例外処理を実行するかを設定する
            /// </summary>
            /// <param name="index">例外処理実行インデックス</param>
            /// <param name="failedToDelete">例外処理を起こすか(例外処理を起こす場合にはtrue)</param>
            public void Init(int index, bool failedToDelete)
            {
                // 例外を発生させるか?
                _failedToDelete = failedToDelete;

                // 現在のインデックスを初期化
                _currentIndex = 1;

                // 例外を発生させるインデックス(何回目にメソッドが呼ばれたときに例外を発生させるか)
                _index = index;

                // リポジトリDI
                DBPolly dbPolly = new DBPolly(_appSettings);
                var     logger  = new TestLogger <PrimaryBlobRepository>(_dtDeviceFileActualLogs);

                _repo = new PrimaryBlobRepository(_appSettings, _primaryBlob, _blobPolly, logger);
            }