public GainCapitalRatesManager(ILoggerWrapper wrapper,
									   IGainCapitalRatesService gainCapitalRatesService,
									   IGainCapitalRatesParser gainCapitalRatesParser)
		{
			if (wrapper == null)
			{
				throw new ArgumentNullException("wrapper");
			}

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

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

			_wrapper = wrapper;
			_gainCapitalRatesParser = gainCapitalRatesParser;
			_gainCapitalRatesService = gainCapitalRatesService;

			_cts = new CancellationTokenSource();
			_factory = new TaskFactory(_cts.Token);
		}
        public GainCapitalRatesManager(ILoggerWrapper wrapper,
                                       IGainCapitalRatesService gainCapitalRatesService,
                                       IGainCapitalRatesParser gainCapitalRatesParser)
        {
            if (wrapper == null)
            {
                throw new ArgumentNullException("wrapper");
            }

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

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

            _wrapper = wrapper;
            _gainCapitalRatesParser  = gainCapitalRatesParser;
            _gainCapitalRatesService = gainCapitalRatesService;

            _cts     = new CancellationTokenSource();
            _factory = new TaskFactory(_cts.Token);
        }