public Service()
        {
            try
            {
                _financialAnalysesCsvFileRepository = new AnalysesCsvFileRepository();
                _marketDataRepository = new MarketDataCsvFileRepository();
                _registryRepository   = new RegistryCsvFileRepository();

                var reader = new AppSettingsReader();

                _buyingPacketInEuro = (int)reader.GetValue("BuyingPacketInEuro", typeof(int));
                _fastMovingAverage  = (int)reader.GetValue("FastMovingAverage", typeof(int));
                _slowMovingAverage  = (int)reader.GetValue("SlowMovingAverage", typeof(int));

                _logger.Debug($"Buying Packet is {_buyingPacketInEuro} EUR from config file.");
                _logger.Debug($"Fast Moving Average subset size is {_fastMovingAverage} from config file.");
                _logger.Debug($"Slow Moving Average subset size is {_slowMovingAverage} from config file.");

                if (_fastMovingAverage >= _slowMovingAverage)
                {
                    throw new BusinessException("The timespan for the fast moving average must be lower than of the slow moving average.");
                }
                if (_buyingPacketInEuro <= 0 || _fastMovingAverage <= 0 || _slowMovingAverage <= 0)
                {
                    throw new BusinessException("Buying packet and moving average subset sizes must be positive numbers.");
                }
            }
            catch (Exception ex)
            {
                _logger.Error(ex);
                throw new BusinessException($"Error when initializing {GetType().Name}.", ex);
            }
        }
 public TextAnalyserService(
     IAnalysesRepository repository,
     IAnalyseResultSerializer serializer,
     ITextAnalyserAlgorithms algorithm
     )
 {
     _repository = repository;
     _serializer = serializer;
     _algorithm  = algorithm;
 }
        public Service(
            IAnalysesRepository analysesRepository,
            IMarketDataRepository marketDataRepository,
            IRegistryRepository registryRepository,
            IConfigReader config)
        {
            try
            {
                _financialAnalysesCsvFileRepository = analysesRepository;
                _marketDataRepository = marketDataRepository;
                _registryRepository   = registryRepository;
                _configReader         = config;

                _buyingPacketInEuro = _configReader.Settings.BuyingPacketInEuro;
                _fastMovingAverage  = _configReader.Settings.FastMovingAverage;
                _slowMovingAverage  = _configReader.Settings.SlowMovingAverage;

                _logger.Debug($"Buying Packet is {_buyingPacketInEuro} EUR from config file.");
                _logger.Debug($"Fast Moving Average subset size is {_fastMovingAverage} from config file.");
                _logger.Debug($"Slow Moving Average subset size is {_slowMovingAverage} from config file.");

                if (_fastMovingAverage >= _slowMovingAverage)
                {
                    throw new BusinessException("The timespan for the fast moving average must be lower than of the slow moving average.");
                }
                if (_buyingPacketInEuro <= 0 || _fastMovingAverage <= 0 || _slowMovingAverage <= 0)
                {
                    throw new BusinessException("Buying packet and moving average subset sizes must be positive numbers.");
                }
            }
            catch (Exception ex)
            {
                _logger.Error(ex);
                throw new BusinessException($"Error when initializing {GetType().Name}.", ex);
            }
        }
Exemple #4
0
 /// <summary>
 /// Instantiates new ReportGenerator.
 /// </summary>
 /// <param name="analysisRepository">The analysis repository</param>
 public ReportGenerator(IAnalysesRepository analysisRepository)
 {
     this.analysisRepository = analysisRepository;
 }
Exemple #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HomeController"/> class.
 /// </summary>
 /// <param name="jobResultsRepository">The job results repository.</param>
 /// <param name="analysisRepository">The analysis repository.</param>
 public HomeController(IJobResultsRepository jobResultsRepository, IAnalysesRepository analysisRepository)
 {
     _jobResultsRepository = jobResultsRepository;
     _analysisRepository   = analysisRepository;
 }