示例#1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="validator"></param>
        /// <param name="parser"></param>
        /// <exception cref="ArgumentNullException"></exception>
        /// <exception cref="FileNotFoundException"></exception>
        /// <exception cref="IOException"></exception>
        /// <exception cref="Exception"></exception>
        public MarketDataCsvSourceProcessor(IMarketDataSourceValidator validator, IMarketDataParser parser)
        {
            if (parser == null)
            {
                throw new ArgumentNullException("parser");
            }

            if (validator == null)
            {
                throw new ArgumentNullException("validator");
            }

            if (!validator.MarketDataSourceExists())
            {
                throw new FileNotFoundException(string.Format("Market data processor file not found."));
            }

            if (!validator.MarketDataSourceIsValid())
            {
                throw new IOException(string.Format("Market data file supplied is not a valid csv file."));
            }

            if (validator.MarketDataSourceIsEmpty())
            {
                // TODO: Replace with custom exception
                throw new Exception(string.Format("Market data file is empty."));
            }

            _parser = parser;
        }
示例#2
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="parser"></param>
 /// <param name="pathResolver"></param>
 public MarketDataLoader(IMarketDataParser parser, IPathResolver pathResolver)
 {
     Parser = parser;
     PathResolver = pathResolver;
 }