Example #1
0
        private void Initialize()
        {
            var cacheManagerFactory     = new CachingManagerFactory(this.Cache);
            var pagingStrategyFactory   = new PagingStrategyFactory();
            var orderingStrategyFacotry = new OrderingStrategyFactory();

            var valueSetBackingItemRepository = new SqlValueSetBackingItemRepository(
                this.SharedContext,
                this.Logger,
                cacheManagerFactory,
                pagingStrategyFactory,
                orderingStrategyFacotry);

            var valueSetCodeRepository = new SqlValueSetCodeRepository(
                this.SharedContext,
                this.Logger,
                cacheManagerFactory,
                pagingStrategyFactory,
                orderingStrategyFacotry);

            var valueSetCodeCountRepository = new SqlValueSetCodeCountRepository(
                this.SharedContext,
                this.Logger,
                cacheManagerFactory);

            var valueSetService = new SqlValueSetService(
                this.Logger,
                valueSetBackingItemRepository,
                valueSetCodeRepository,
                valueSetCodeCountRepository);

            this.ValueSetComparisonService = new ValueSetComparisonService(valueSetService);
        }
Example #2
0
        private void Initialize()
        {
            var cacheManagerFactory    = new CachingManagerFactory(this.Cache);
            var pagingStrategyFactory  = new PagingStrategyFactory();
            var clientTermCacheManager = new ClientTermCacheManager(cacheManagerFactory);
            var uow = new ClientTermValueUnitOfWorkManager(this.ClientTermContext.AsLazy(), this.Logger);
            var valueSetStatusChangePolicy = new DefaultValueSetUpdateValidationPolicy();
            var orderingStrategyFactory    = new OrderingStrategyFactory();

            var valueSetCodeRepository = new SqlValueSetCodeRepository(
                this.SharedContext,
                this.Logger,
                cacheManagerFactory,
                pagingStrategyFactory,
                orderingStrategyFactory);

            var valueSetCodeCountRepository = new SqlValueSetCodeCountRepository(
                this.SharedContext,
                this.Logger,
                cacheManagerFactory);

            var valueSetBackingItemRepository = new SqlValueSetBackingItemRepository(
                this.SharedContext,
                this.Logger,
                cacheManagerFactory,
                pagingStrategyFactory,
                orderingStrategyFactory);

            var sqlClientTermUowRepository = new SqlClientTermValueSetRepository(
                this.Logger,
                uow,
                valueSetStatusChangePolicy,
                clientTermCacheManager);

            var sqlCodeSystemRepository = new SqlCodeSystemRepository(
                this.SharedContext,
                this.Logger,
                new CodeSystemCachingManager(this.Cache));

            var sqlCodeSystemCodeRepository = new SqlCodeSystemCodeRepository(
                this.SharedContext,
                this.Logger,
                new CodeSystemCodeCachingManager(this.Cache),
                pagingStrategyFactory);

            this.ValueSetService = new SqlValueSetService(
                this.Logger,
                valueSetBackingItemRepository,
                valueSetCodeRepository,
                valueSetCodeCountRepository);

            this.ClientTermValueSetService = new SqlClientTermValueSetService(
                this.Logger,
                valueSetBackingItemRepository,
                sqlClientTermUowRepository);

            this.ValueSetSummaryService = new SqlValueSetSummaryService(
                this.Logger,
                valueSetBackingItemRepository,
                valueSetCodeCountRepository);

            this.CodeSystemService = new SqlCodeSystemService(sqlCodeSystemRepository);

            this.CodeSystemCodeService = new SqlCodeSystemCodeService(sqlCodeSystemCodeRepository);
        }