public KeyValueStore GetSecondaryIndex(string IndexName) {
KeyValueStore indexStore = null;
lock (_secondaryIndexes) {
if (!_secondaryIndexes.TryGetValue(IndexName, out indexStore)) {
indexStore = new KeyValueStore(Config.IndexBaseName(Manifest.BaseFileName, IndexName), _cache);
if (Manifest.Logger != null) {
indexStore.Manifest.Logger = msg => Manifest.Logger(string.Format("{0}: {1}", IndexName, msg));
}
_secondaryIndexes.Add(IndexName, indexStore);
}
}
return indexStore;
}