Lucene.Net.Index.IndexWriterConfig.SetSimilarity C# (CSharp) Méthode

SetSimilarity() public méthode

Expert: set the Similarity implementation used by this IndexWriter.

NOTE: the similarity cannot be null.

Only takes effect when IndexWriter is first created.

public SetSimilarity ( Similarity similarity ) : IndexWriterConfig
similarity Similarity
Résultat IndexWriterConfig
        public IndexWriterConfig SetSimilarity(Similarity similarity)
        {
            if (similarity == null)
            {
                throw new System.ArgumentException("similarity must not be null");
            }
            this.similarity = similarity;
            return this;
        }

Usage Example

Exemple #1
0
        public virtual void TestCustomEncoder()
        {
            Directory    dir      = NewDirectory();
            MockAnalyzer analyzer = new MockAnalyzer(Random);

            IndexWriterConfig config = NewIndexWriterConfig(TEST_VERSION_CURRENT, analyzer);

            config.SetSimilarity(new CustomNormEncodingSimilarity(this));
            RandomIndexWriter writer = new RandomIndexWriter(Random, dir, config);
            Document          doc    = new Document();
            Field             foo    = NewTextField("foo", "", Field.Store.NO);
            Field             bar    = NewTextField("bar", "", Field.Store.NO);

            doc.Add(foo);
            doc.Add(bar);

            for (int i = 0; i < 100; i++)
            {
                bar.SetStringValue("singleton");
                writer.AddDocument(doc);
            }

            IndexReader reader = writer.GetReader();

            writer.Dispose();

            NumericDocValues fooNorms = MultiDocValues.GetNormValues(reader, "foo");

            for (int i = 0; i < reader.MaxDoc; i++)
            {
                Assert.AreEqual(0, fooNorms.Get(i));
            }

            NumericDocValues barNorms = MultiDocValues.GetNormValues(reader, "bar");

            for (int i = 0; i < reader.MaxDoc; i++)
            {
                Assert.AreEqual(1, barNorms.Get(i));
            }

            reader.Dispose();
            dir.Dispose();
        }
All Usage Examples Of Lucene.Net.Index.IndexWriterConfig::SetSimilarity