public object Clone() { EvictionConfiguration evictConfiguration = new EvictionConfiguration(); evictConfiguration.EnabledEviction = EnabledEviction; evictConfiguration.Policy = Policy; return(evictConfiguration); }
public static void ValidateConfiguration(EvictionConfiguration configuration) { if (configuration == null) { throw new Exception("Eviction Configuration cannot be null."); } //if (configuration.Policy != null) //{ //TODO Eviction Policy Values LRU and ?? //} }
public static void ValidateConfiguration(CollectionConfiguration configuration) { if (configuration == null) { throw new Exception("Collection Configuration cannot be null."); } if (configuration.CollectionName == null) { throw new Exception("Collection Name cannot be null."); } if (configuration.CollectionName.Trim() == "") { throw new Exception("Collection Name cannot be empty string."); } //TODO Validate valid collection type and distribution configuration DistributionStrategyConfiguration.ValidateConfiguration(configuration.DistributionStrategy); //Optionals if (configuration.PartitionKey != null) { PartitionKeyConfiguration.ValidateConfiguration(configuration.PartitionKey); } if (configuration.Caching != null) { CachingConfiguration.ValidateConfiguration(configuration.Caching); } if (configuration.EvictionConfiguration != null) { EvictionConfiguration.ValidateConfiguration(configuration.EvictionConfiguration); } if (configuration.Indices != null) { Indices.ValidateConfiguration(configuration.Indices); } }
public object Clone() { CollectionConfiguration cConfiguration = new CollectionConfiguration(); cConfiguration.Indices = Indices != null ? (Indices)Indices.Clone() : null; cConfiguration.Caching = Caching != null?Caching.Clone() as CachingConfiguration : null; cConfiguration.CollectionSize = CollectionSize; cConfiguration.MaxDocuments = MaxDocuments; cConfiguration.Shard = Shard; cConfiguration.EvictionConfiguration = EvictionConfiguration != null ? (EvictionConfiguration)EvictionConfiguration.Clone() : null; cConfiguration.PartitionKey = PartitionKey; cConfiguration.Path = Path; return(cConfiguration); }