public virtual void TestMultiValueSource() { Directory dir = new MockRAMDirectory(); IndexWriter w = new IndexWriter(dir, new WhitespaceAnalyzer(), IndexWriter.MaxFieldLength.UNLIMITED); Document doc = new Document(); Field f = new Field("field", "", Field.Store.NO, Field.Index.NOT_ANALYZED); doc.Add(f); for (int i = 0; i < 17; i++) { f.SetValue("" + i); w.AddDocument(doc); w.Commit(); } IndexReader r = w.GetReader(); w.Close(); Assert.IsTrue(r.GetSequentialSubReaders().Length > 1); ValueSource s1 = new IntFieldSource("field"); DocValues v1 = s1.GetValues(r); DocValues v2 = new MultiValueSource(s1).GetValues(r); for (int i = 0; i < r.MaxDoc(); i++) { Assert.AreEqual(v1.IntVal(i), i); Assert.AreEqual(v2.IntVal(i), i); } Lucene.Net.Search.FieldCache_Fields.DEFAULT.PurgeAllCaches(); r.Close(); dir.Close(); }
/*(non-Javadoc) <see cref="Lucene.Net.Search.Function.FieldCacheSource.cachedFieldSourceEquals(Lucene.Net.Search.Function.FieldCacheSource) */ public override bool CachedFieldSourceEquals(FieldCacheSource o) { if (o.GetType() != typeof(IntFieldSource)) { return(false); } IntFieldSource other = (IntFieldSource)o; return(this.parser == null?other.parser == null:this.parser.GetType() == other.parser.GetType()); }
private void InitBlock(int[] arr, IntFieldSource enclosingInstance) { this.arr = arr; this.enclosingInstance = enclosingInstance; }
public AnonymousClassDocValues(int[] arr, IntFieldSource enclosingInstance) { InitBlock(arr, enclosingInstance); }