예제 #1
0
        private IndexCreationOptions FindIndexCreationOptions(IndexDefinition definition, ref string name)
        {
            definition.Name = name;
            definition.RemoveDefaultValues();
            IndexDefinitionStorage.ResolveAnalyzers(definition);
            var findIndexCreationOptions = IndexDefinitionStorage.FindIndexCreationOptions(definition);

            return(findIndexCreationOptions);
        }
예제 #2
0
        public void CreateIndexImplementation(IndexDefinition indexDefinition)
        {
            var encodedName = IndexDefinitionStorage.FixupIndexName(indexDefinition.Name, path);

            log.Debug("Creating index {0} with encoded name {1}", indexDefinition.Name, encodedName);

            IndexDefinitionStorage.ResolveAnalyzers(indexDefinition);
            AssertAnalyzersValid(indexDefinition);

            indexes.AddOrUpdate(indexDefinition.Name, n =>
            {
                var directory = OpenOrCreateLuceneDirectory(indexDefinition, encodedName);
                return(CreateIndexImplementation(encodedName, indexDefinition, directory));
            }, (s, index) => index);
        }