public IndicatorComparisonHelper(IndicatorMetadata indicatorMetadata, Grouping grouping,
            IGroupDataReader groupDataReader, PholioReader pholioReader, IArea nationalArea)
        {
            // Assign constructor parameter to instance variables
            this.indicatorMetadata = indicatorMetadata;
            this.grouping = grouping;
            this.groupDataReader = groupDataReader;

            InitComparer(pholioReader, nationalArea);
        }
        public LookUpManager(PholioReader pholioReader, IAreasReader areasReader,
            IList<int> areaTypeIds, IList<int> categoryTypeIds)
        {
            ageIdToName = pholioReader.GetAllAges().ToDictionary(x => x.Id, x => x.Name);
            sexIdToName = pholioReader.GetAllSexes().ToDictionary(x => x.Id, x => x.Name);
            InitAreaCodeToNameLookUp(areasReader, areaTypeIds);

            var categoryTypes = areasReader.GetCategoryTypes(categoryTypeIds);
            categoryTypeIdToName = categoryTypes.ToDictionary(x => x.Id, x => x.Name);
            categoryTypeIdToCategoryIdToName = GetCategoryTypeIdToCategoryIdToNameLookUp(categoryTypes);

            valueNoteIdToText = pholioReader.GetAllValueNotes().ToDictionary(x => x.Id, x => x.Text);
        }
 private void InitComparer(PholioReader pholioReader, IArea nationalArea)
 {
     if (indicatorMetadata.HasTarget)
     {
         targetComparer = TargetComparerFactory.New(indicatorMetadata.TargetConfig);
         new TargetComparerHelper(groupDataReader, nationalArea)
             .AssignExtraDataIfRequired(nationalArea, targetComparer, grouping, indicatorMetadata);
     }
     else
     {
         comparer = new IndicatorComparerFactory {PholioReader = pholioReader}.New(grouping);
     }
 }
 public static PholioReader GetPholioReader()
 {
     PholioReader service = new PholioReader(GetSessionFactory());
     service.OpenSession();
     return service;
 }
 public CcgPopulationProvider(PholioReader pholioReader)
 {
     this.pholioReader = pholioReader;
 }