public Server(Settings settings, IMetaStorage metaStorage, IBucketFactory bucketFactory, IIndexStore <long, ulong> piStore) { this.piStore = piStore; trainBags = new LogBins.TrainBag[settings.TrainsCount]; trainBagsSemaphores = new SemaphoreSlim[settings.TrainsCount]; for (int i = 0; i < trainBags.Length; ++i) { trainBags[i] = new LogBins.TrainBag((ushort)(i + 1), bucketFactory, metaStorage, new LogBins.BagSettings { PerBucketMessages = 8192 }); trainBagsSemaphores[i] = new SemaphoreSlim(1, 1); } piStore.Load(primaryIndex); }