gate.creole.annic.apache.lucene.search
Class SortField

java.lang.Object
  extended by gate.creole.annic.apache.lucene.search.SortField
All Implemented Interfaces:
Serializable

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 529 2004-10-05 11:55:26Z niraj $
Author:
Tim Jones (Nacimiento Software)
See Also:
Sort, Serialized Form

Field Summary
static int AUTO
          Guess type of sort based on field contents.
static int CUSTOM
          Sort using a custom Comparator.
static int DOC
          Sort by document number (index order).
static SortField FIELD_DOC
          Represents sorting by document number (index order).
static SortField FIELD_SCORE
          Represents sorting by document score (relevancy).
static int FLOAT
          Sort using term values as encoded Floats.
static int INT
          Sort using term values as encoded Integers.
static int SCORE
          Sort by document score (relevancy).
static int STRING
          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
 SortComparatorSource getFactory()
           
 String getField()
          Returns the name of the field.
 Locale getLocale()
          Returns the Locale by which term values are interpreted.
 boolean getReverse()
          Returns whether the sort should be reversed.
 int getType()
          Returns the type of contents in the field.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SCORE

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

See Also:
Constant Field Values

DOC

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

See Also:
Constant Field Values

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.

See Also:
Constant Field Values

STRING

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

See Also:
Constant Field Values

INT

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

See Also:
Constant Field Values

FLOAT

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

See Also:
Constant Field Values

CUSTOM

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

See Also:
Constant Field Values

FIELD_SCORE

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


FIELD_DOC

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

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

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.

getType

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

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

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.

getFactory

public SortComparatorSource getFactory()

toString

public String toString()
Overrides:
toString in class Object