예제 #1
0
 public CollectorGate(string tableName, DbFactory dbFactory,
                      CollectorConfiguration collectorConfiguration, CollectorNetConfiguration netConfiguration,
                      CommonConfiguration commonConfiguration, TimeoutConfiguration timeoutConfiguration)
     : base(collectorConfiguration, netConfiguration, commonConfiguration, timeoutConfiguration)
 {
     Contract.Requires(!string.IsNullOrEmpty(tableName));
     Contract.Requires(_dbFactory != null);
     _tableName = tableName;
     _dbFactory = dbFactory;
 }
예제 #2
0
        protected CollectorApi(CollectorConfiguration collectorConfiguration, CollectorNetConfiguration netConfiguration,
                               CommonConfiguration commonConfiguration, TimeoutConfiguration timeoutConfiguration)
        {
            Contract.Requires(collectorConfiguration != null);
            Contract.Requires(netConfiguration != null);
            Contract.Requires(commonConfiguration != null);
            Contract.Requires(timeoutConfiguration != null);

            _isStarted = false;
            _isBuild   = false;
            _isDispose = false;

            _collectorSystem = new CollectorSystem(
                new DistributorHashConfiguration(collectorConfiguration.CountReplics),
                new HashMapConfiguration(collectorConfiguration.FileWithHashName, HashMapCreationMode.ReadFromFile, 1,
                                         collectorConfiguration.CountReplics, HashFileType.Collector),
                new ConnectionConfiguration(netConfiguration.WcfServiceName,
                                            netConfiguration.CountConnectionsToSingleServer),
                new ConnectionTimeoutConfiguration(timeoutConfiguration.OpenTimeout, timeoutConfiguration.SendTimeout),
                new QueueConfiguration(commonConfiguration.CountThreads, commonConfiguration.QueueSize),
                collectorConfiguration.PageSize, collectorConfiguration.UseHashFile);

            _apis = new Dictionary <string, CollectorHandlerTuple>();
        }