protected virtual RAMDirectory CreateDirectory(string folder)
        {
            FileUtil.EnsureFolder(folder);
            RAMDirectory directory = new RAMDirectory(folder);

            using (new IndexLocker(directory.MakeLock("write.lock")))
            {
                if (!IndexReader.IndexExists(directory))
                {
                    new IndexWriter(directory, this._analyzer, true).Close();
                }
            }
            return(directory);
        }
Example #2
0
        /// <summary>
        /// This will load a file based index into RAM
        /// </summary>
        protected virtual RAMDirectory CreateDirectory(string folder)
        {
            FileUtil.EnsureFolder(folder);
            Lucene.Net.Store.FSDirectory tempDirectory = Lucene.Net.Store.FSDirectory.GetDirectory(folder, false);
            var directory = new RAMDirectory(tempDirectory);

            using (new IndexLocker(directory.MakeLock("write.lock")))
            {
                if (!IndexReader.IndexExists(directory))
                {
                    new IndexWriter(directory, this._analyzer, true).Close();
                }
            }

            return(directory);
        }