예제 #1
0
 public Controller(IMigrateConfiguration migrateConfig, ILogService log, IGenericSyncRespository syncRepository, Func <ITableSpec, IMutateTarget> createMutateTarget, IEnumerable <ITableSpec> tables)
 {
     _migrateConfig      = migrateConfig;
     _log                = log;
     _syncRepository     = syncRepository;
     _createMutateTarget = createMutateTarget;
     _tables             = tables;
 }
예제 #2
0
        public MutateTarget(ILogService log, IGenericSyncRespository syncRepository, int maxBatchSize, ITableDetails tableDetails) : base(log, tableDetails)
        {
            _syncRepository = syncRepository;
            _maxBatchSize   = maxBatchSize;
            _tableDetails   = tableDetails;

            _toInsert = new List <dynamic>();
            _toUpdate = new List <dynamic>();
            _toDelete = new List <Keys>();
        }
        public VacancyApplicationsMigrationProcessor(IVacancyApplicationsUpdater vacancyApplicationsUpdater, IApplicationMappers applicationMappers, IGenericSyncRespository genericSyncRespository, IGetOpenConnection sourceDatabase, IGetOpenConnection targetDatabase, IConfigurationService configurationService, ILogService logService)
        {
            _vacancyApplicationsUpdater = vacancyApplicationsUpdater;
            _applicationMappers         = applicationMappers;
            _genericSyncRespository     = genericSyncRespository;
            _targetDatabase             = targetDatabase;
            _logService = logService;

            _vacancyRepository                       = new VacancyRepository(targetDatabase);
            _candidateRepository                     = new CandidateRepository(targetDatabase);
            _sourceApplicationRepository             = new ApplicationRepository(sourceDatabase);
            _sourceApplicationHistoryRepository      = new ApplicationHistoryRepository(sourceDatabase, _logService);
            _sourceSubVacancyRepository              = new SubVacancyRepository(sourceDatabase);
            _destinationApplicationRepository        = new ApplicationRepository(targetDatabase);
            _destinationApplicationHistoryRepository = new ApplicationHistoryRepository(targetDatabase, _logService);
            _schoolAttendedRepository                = new SchoolAttendedRepository(targetDatabase);
            _destinationSubVacancyRepository         = new SubVacancyRepository(targetDatabase);
            _vacancyApplicationsRepository           = new VacancyApplicationsRepository(_vacancyApplicationsUpdater.CollectionName, configurationService, logService);
            _updateVacancyApplicationsRepository     = new UpdateVacancyApplicationsRepository(_vacancyApplicationsUpdater.CollectionName, configurationService, logService);
        }
        public CandidateMigrationProcessor(ICandidateMappers candidateMappers, SyncRepository syncRepository, IGenericSyncRespository genericSyncRespository, IGetOpenConnection targetDatabase, IConfigurationService configurationService, ILogService logService)
        {
            _candidateMappers       = candidateMappers;
            _syncRepository         = syncRepository;
            _genericSyncRespository = genericSyncRespository;
            _targetDatabase         = targetDatabase;
            _logService             = logService;

            _vacancyRepository          = new VacancyRepository(targetDatabase);
            _localAuthorityRepository   = new LocalAuthorityRepository(targetDatabase);
            _candidateRepository        = new CandidateRepository(targetDatabase);
            _schoolAttendedRepository   = new SchoolAttendedRepository(targetDatabase);
            _candidateHistoryRepository = new CandidateHistoryRepository(targetDatabase);
            _candidateUserRepository    = new CandidateUserRepository(configurationService, _logService);
            _userRepository             = new UserRepository(configurationService, logService);

            var configuration = configurationService.Get <MigrateFromFaaToAvmsPlusConfiguration>();

            _anonymiseData = configuration.AnonymiseData;
        }