示例#1
0
 public PreCalculatedDistributionStrategy(string connectionString, IProvidePageIds pageIdProvider, RequestsReader reader, IDistributionReadStrategy backend)
 {
     _connectionString = connectionString;
     _pageIdProvider   = pageIdProvider;
     _requestsReader   = reader;
     _backend          = backend;
 }
 public PreCalculatedTrendStrategy(string connectionString, RequestsReader reader, IProvidePageIds pageIdProvider, ITrendReadStrategy backend)
 {
     _reader           = reader;
     _pageIdProvider   = pageIdProvider;
     _connectionString = connectionString;
     _backend          = backend;
 }
        //readonly RequestsReader _requestsReader;

        public TrendStore(string connectionString, IProvidePageIds pageIdProvider, RequestsReader requestsReader)
        {
            _realTimeTrendStrategy      = new RealTimeTrendStrategy(connectionString, pageIdProvider);
            _preCalculatedTrendStrategy = new PreCalculatedTrendStrategy(connectionString, requestsReader, pageIdProvider, _realTimeTrendStrategy);
            _requestsReader             = requestsReader;
            //_requestsReader = requestsReader;
        }
        public SqlServerStore(string connectionStringOrConnectionStringName)
        {
            var fromConfig = ConfigurationManager.ConnectionStrings[connectionStringOrConnectionStringName];

            if (fromConfig != null)
            {
                _connectionString = fromConfig.ConnectionString;
            }
            else
            {
                _connectionString = connectionStringOrConnectionStringName;
            }


            Exception outConn;

            if (!ConnectionHelper.TestConnection(_connectionString, out outConn))
            {
                throw new ArgumentNullException("connection", outConn);
            }

            _pageIdProvider = new CachedPageIdProvider(new SqlPageIdProvider(_connectionString));

            _requestsWriter = new RequestsWriter(_connectionString, _pageIdProvider);
            _requestsReader = new RequestsReader(_connectionString);

            _allPagesStore     = new AllPagesStore(_connectionString, _pageIdProvider);
            _distributionStore = new DistributionStore(_connectionString, _pageIdProvider, _requestsReader);
            _trendStore        = new TrendStore(_connectionString, _pageIdProvider, _requestsReader);

            _scheduler = new Scheduler(_allPagesStore, _distributionStore, _trendStore, this);
        }
        public AllPagesStore(string connectionString, IProvidePageIds pageIdProvider)
        {
            _connectionString = connectionString;
            _pageIdProvider   = pageIdProvider;

            _realTimeReadStrategy      = new RealTimeAllPagesReadStrategy(_connectionString, _pageIdProvider);
            _preCalculatedReadStrategy = new PreCalculatedAllPagesStrategy(_connectionString, _realTimeReadStrategy, _pageIdProvider);
            _requestsReader            = new RequestsReader(_connectionString);
        }
 public CachedPageIdProvider(IProvidePageIds backend)
 {
     _backend = backend;
 }
 public PreCalculatedAllPagesStrategy(string connectionString, IAllPagesReadStrategy backend, IProvidePageIds pageIdProvider)
 {
     _backend          = backend;
     _connectionString = connectionString;
     _pageIdProvider   = pageIdProvider;
 }
 public RealTimeTrendStrategy(string connectionString, IProvidePageIds pageIdProvider)
 {
     _connectionString = connectionString;
     _pageIdProvider   = pageIdProvider;
 }
 public RequestsWriter(string connectionString, IProvidePageIds pageProvider)
 {
     _pageProvider     = pageProvider;
     _connectionString = connectionString;
 }