internal QuantObserverRepoDecorator(IQuantObserver <T> obs, ILogger log, IQuantRepository <T> repo)
        {
            try
            {
                _obs  = obs;
                _log  = log;
                _repo = repo;
            }
            catch (Exception e)
            {
                _log.Critical(e, e.Message);

                // To need for writ log
                System.Threading.Thread.Sleep(2000);
                throw;
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// For stream work p2p services
        /// </summary>
        /// <returns></returns>
        public IQuantObserver <T> P2PQueue <T>()
        {
            IQuantObserver <T> observer = null;

            try
            {
                observer = new QuantObserverLogDecorator <T>(
                    new QuantObserver <T>(_config, _loger), _loger);
            }
            catch (QuantBaseException e)
            {
                _loger.Error(e, e.Message);
            }
            catch (Exception e)
            {
                _loger.Critical(e, e.Message);
            }
            return(observer);
        }
Exemplo n.º 3
0
        /// <summary>
        /// For stream work with RES flow
        /// </summary>
        /// <returns>IQuantObserver</returns>
        public IQuantObserver <QuantMessage> RouteQueue()
        {
            IQuantObserver <QuantMessage> observer = null;

            try
            {
                observer = new QuantObserverLogDecorator <QuantMessage>(
                    new QuantObserverRepoDecorator <QuantMessage>(
                        new QuantObserver <QuantMessage>(_config, _loger), _loger, _repo), _loger);
            }
            catch (QuantBaseException e)
            {
                _loger.Error(e, e.Message);
            }
            catch (Exception e)
            {
                _loger.Critical(e, e.Message);
            }
            return(observer);
        }
 internal QuantObserverLogDecorator(IQuantObserver <T> obs, ILogger log)
 {
     _obs = obs;
     _log = log;
 }