Lucene.Net.Search.SampleComparable.AnonymousClassSortComparatorSource.FillCache C# (CSharp) Method

FillCache() protected method

Returns an array of objects which represent that natural order of the term values in the given Field.
protected FillCache ( Lucene.Net.Index.IndexReader reader, Lucene.Net.Index.TermEnum enumerator, System fieldname ) : System.IComparable[]
reader Lucene.Net.Index.IndexReader Terms are in this index. ///
enumerator Lucene.Net.Index.TermEnum Use this to get the term values and TermDocs. ///
fieldname System Comparables should be for this Field. ///
return System.IComparable[]
			protected internal virtual System.IComparable[] FillCache(IndexReader reader, TermEnum enumerator, System.String fieldname)
			{
				System.String field = String.Intern(fieldname);
				System.IComparable[] retArray = new System.IComparable[reader.MaxDoc()];
				if (retArray.Length > 0)
				{
					TermDocs termDocs = reader.TermDocs();
					try
					{
						if (enumerator.Term() == null)
						{
							throw new System.SystemException("no terms in Field " + field);
						}
						do 
						{
							Term term = enumerator.Term();
							if ((System.Object) term.Field() != (System.Object) field)
								break;
							System.IComparable termval = GetComparable(term.Text());
							termDocs.Seek(enumerator);
							while (termDocs.Next())
							{
								retArray[termDocs.Doc()] = termval;
							}
						}
						while (enumerator.Next());
					}
					finally
					{
						termDocs.Close();
					}
				}
				return retArray;
			}
			
SampleComparable.AnonymousClassSortComparatorSource