using System.Collections.Generic;
namespace ZeroLevel.Services.PartitionStorage
{
///
/// Provides read/reindex operations in catalog partition
///
/// Key type
/// Type of one input value
/// Type of records aggregate
public interface IStorePartitionAccessor
: IStorePartitionBase
{
///
/// Rebuild indexes
///
void RebuildIndex();
///
/// Find in catalog partition by key
///
StorePartitionKeyValueSearchResult Find(TKey key);
///
/// Find in catalog partition by keys
///
IEnumerable> Find(IEnumerable keys);
IEnumerable> Iterate();
IEnumerable> IterateKeyBacket(TKey key);
void RemoveKey(TKey key);
void RemoveKeys(IEnumerable keys);
void RemoveAllExceptKey(TKey key);
void RemoveAllExceptKeys(IEnumerable keys);
}
}