public override DocValues GetValues(IndexReader reader) { IndexReader[] subReaders = reader.GetSequentialSubReaders(); if (subReaders != null) { // This is a composite reader return(new MultiDocValues(this, subReaders)); } else { // Already an atomic reader -- just delegate return(other.GetValues(reader)); } }
public override DocValues GetValues(IndexReader reader) { IndexReader[] subReaders = reader.GetSequentialSubReaders(); if (subReaders != null) { // This is a composite reader return new MultiDocValues(this, subReaders); } else { // Already an atomic reader -- just delegate return other.GetValues(reader); } }
/// <summary> Gathers sub-readers from reader into a List. /// /// </summary> /// <param name="allSubReaders"> /// </param> /// <param name="reader"> /// </param> public static void GatherSubReaders(System.Collections.IList allSubReaders, IndexReader reader) { IndexReader[] subReaders = reader.GetSequentialSubReaders(); if (subReaders == null) { // Add the reader itself, and do not recurse allSubReaders.Add(reader); } else { for (int i = 0; i < subReaders.Length; i++) { GatherSubReaders(allSubReaders, subReaders[i]); } } }