Exemple #1
0
        private Learner DataOrArchive(ILearnerDataService dataService, int learnerId)
        {
            LearnerResponse response = dataService.GetLearner(learnerId);

            return(response.IsArchived
                ? _archiveService.GetLearner(learnerId)
                : response.Learner);
        }
Exemple #2
0
        public void Teardown()
        {
            _archiveService      = null;
            _failoverDataService = null;
            _liveDataService     = null;
            _failoverService     = null;

            _sut = null;
        }
Exemple #3
0
        public void Setup()
        {
            _archiveService      = A.Fake <ILearnerArchiveService>();
            _failoverDataService = A.Fake <ILearnerDataService>();
            _liveDataService     = A.Fake <ILearnerDataService>();
            _failoverService     = A.Fake <IFailoverService>();

            _sut = new LearnerService(_archiveService, _failoverDataService, _liveDataService, _failoverService);
        }
Exemple #4
0
 public LearnerService(
     ILearnerArchiveService archiveService
     , ILearnerDataService failoverDataService
     , ILearnerDataService liveDataService
     , IFailoverService failoverService
     )
 {
     _archiveService      = archiveService;
     _failoverDataService = failoverDataService;
     _liveDataService     = liveDataService;
     _failoverService     = failoverService;
 }
Exemple #5
0
 // inFailoverMode passed as a Func as we only want to call it (expensive) when required
 private Func <int, Learner> GetStrategy(bool isLearnerArchived, Func <bool> inFailoverMode)
 {
     if (isLearnerArchived)
     {
         return((id) => _archiveService.GetLearner(id));
     }
     else
     {
         ILearnerDataService dataService = inFailoverMode()
             ? _failoverDataService
             : _liveDataService;
         return((id) => DataOrArchive(dataService, id));
     }
 }