org.apache.lucene.search

Class SortField

public class SortField extends Object implements Serializable

Stores information about how to sort documents by terms in an individual field. Fields must be indexed in order to sort by them.

Created: Feb 11, 2004 1:25:29 PM

Since: lucene 1.4

Version: $Id: SortField.java 472959 2006-11-09 16:21:50Z yonik $

Author: Tim Jones (Nacimiento Software)

See Also: Sort

Field Summary
static intAUTO
Guess type of sort based on field contents.
static intCUSTOM
Sort using a custom Comparator.
static intDOC
Sort by document number (index order).
static SortFieldFIELD_DOC
Represents sorting by document number (index order).
static SortFieldFIELD_SCORE
Represents sorting by document score (relevancy).
static intFLOAT
Sort using term values as encoded Floats.
static intINT
Sort using term values as encoded Integers.
static intSCORE
Sort by document score (relevancy).
static intSTRING
Sort using term values as Strings.
Constructor Summary
SortField(String field)
Creates a sort by terms in the given field where the type of term value is determined dynamically (AUTO).
SortField(String field, boolean reverse)
Creates a sort, possibly in reverse, by terms in the given field where the type of term value is determined dynamically (AUTO).
SortField(String field, int type)
Creates a sort by terms in the given field with the type of term values explicitly given.
SortField(String field, int type, boolean reverse)
Creates a sort, possibly in reverse, by terms in the given field with the type of term values explicitly given.
SortField(String field, Locale locale)
Creates a sort by terms in the given field sorted according to the given locale.
SortField(String field, Locale locale, boolean reverse)
Creates a sort, possibly in reverse, by terms in the given field sorted according to the given locale.
SortField(String field, SortComparatorSource comparator)
Creates a sort with a custom comparison function.
SortField(String field, SortComparatorSource comparator, boolean reverse)
Creates a sort, possibly in reverse, with a custom comparison function.
Method Summary
SortComparatorSourcegetFactory()
StringgetField()
Returns the name of the field.
LocalegetLocale()
Returns the Locale by which term values are interpreted.
booleangetReverse()
Returns whether the sort should be reversed.
intgetType()
Returns the type of contents in the field.
StringtoString()

Field Detail

AUTO

public static final int AUTO
Guess type of sort based on field contents. A regular expression is used to look at the first term indexed for the field and determine if it represents an integer number, a floating point number, or just arbitrary string characters.

CUSTOM

public static final int CUSTOM
Sort using a custom Comparator. Sort values are any Comparable and sorting is done according to natural order.

DOC

public static final int DOC
Sort by document number (index order). Sort values are Integer and lower values are at the front.

FIELD_DOC

public static final SortField FIELD_DOC
Represents sorting by document number (index order).

FIELD_SCORE

public static final SortField FIELD_SCORE
Represents sorting by document score (relevancy).

FLOAT

public static final int FLOAT
Sort using term values as encoded Floats. Sort values are Float and lower values are at the front.

INT

public static final int INT
Sort using term values as encoded Integers. Sort values are Integer and lower values are at the front.

SCORE

public static final int SCORE
Sort by document score (relevancy). Sort values are Float and higher values are at the front.

STRING

public static final int STRING
Sort using term values as Strings. Sort values are String and lower values are at the front.

Constructor Detail

SortField

public SortField(String field)
Creates a sort by terms in the given field where the type of term value is determined dynamically (AUTO).

Parameters: field Name of field to sort by, cannot be null.

SortField

public SortField(String field, boolean reverse)
Creates a sort, possibly in reverse, by terms in the given field where the type of term value is determined dynamically (AUTO).

Parameters: field Name of field to sort by, cannot be null. reverse True if natural order should be reversed.

SortField

public SortField(String field, int type)
Creates a sort by terms in the given field with the type of term values explicitly given.

Parameters: field Name of field to sort by. Can be null if type is SCORE or DOC. type Type of values in the terms.

SortField

public SortField(String field, int type, boolean reverse)
Creates a sort, possibly in reverse, by terms in the given field with the type of term values explicitly given.

Parameters: field Name of field to sort by. Can be null if type is SCORE or DOC. type Type of values in the terms. reverse True if natural order should be reversed.

SortField

public SortField(String field, Locale locale)
Creates a sort by terms in the given field sorted according to the given locale.

Parameters: field Name of field to sort by, cannot be null. locale Locale of values in the field.

SortField

public SortField(String field, Locale locale, boolean reverse)
Creates a sort, possibly in reverse, by terms in the given field sorted according to the given locale.

Parameters: field Name of field to sort by, cannot be null. locale Locale of values in the field.

SortField

public SortField(String field, SortComparatorSource comparator)
Creates a sort with a custom comparison function.

Parameters: field Name of field to sort by; cannot be null. comparator Returns a comparator for sorting hits.

SortField

public SortField(String field, SortComparatorSource comparator, boolean reverse)
Creates a sort, possibly in reverse, with a custom comparison function.

Parameters: field Name of field to sort by; cannot be null. comparator Returns a comparator for sorting hits. reverse True if natural order should be reversed.

Method Detail

getFactory

public SortComparatorSource getFactory()

getField

public String getField()
Returns the name of the field. Could return null if the sort is by SCORE or DOC.

Returns: Name of field, possibly null.

getLocale

public Locale getLocale()
Returns the Locale by which term values are interpreted. May return null if no Locale was specified.

Returns: Locale, or null.

getReverse

public boolean getReverse()
Returns whether the sort should be reversed.

Returns: True if natural order should be reversed.

getType

public int getType()
Returns the type of contents in the field.

Returns: One of the constants SCORE, DOC, AUTO, STRING, INT or FLOAT.

toString

public String toString()
Copyright © 2000-2007 Apache Software Foundation. All Rights Reserved.