IM Profile

javax.microedition.rms
Interface RecordComparator


public interface RecordComparator

An interface defining a comparator which compares two records (in an implementation-defined manner) to see if they match or what their relative sort order is. The application implements this interface to compare two candidate records. The return value must indicate the ordering of the two records. The compare method is called by RecordEnumeration to sort and return records in an application specified order. For example:

 RecordComparator c = new AddressRecordComparator();
 if (c.compare(recordStore.getRecord(rec1), recordStore.getRecord(rec2))
	 == RecordComparator.PRECEDES)
 return rec1;
 

Since:
MIDP 1.0

Field Summary
static int EQUIVALENT
          EQUIVALENT means that in terms of search or sort order, the two records are the same.
static int FOLLOWS
          FOLLOWS means that the left (first parameter) record follows the right (second parameter) record in terms of search or sort order.
static int PRECEDES
          PRECEDES means that the left (first parameter) record precedes the right (second parameter) record in terms of search or sort order.
 
Method Summary
 int compare(byte[] rec1, byte[] rec2)
          Returns RecordComparator.PRECEDES if rec1 precedes rec2 in sort order, or RecordComparator.FOLLOWS if rec1 follows rec2 in sort order, or RecordComparator.EQUIVALENT if rec1 and rec2 are equivalent in terms of sort order.
 

Field Detail

EQUIVALENT

public static final int EQUIVALENT
EQUIVALENT means that in terms of search or sort order, the two records are the same. This does not necessarily mean that the two records are identical.

The value of EQUIVALENT is 0.

See Also:
Constant Field Values

FOLLOWS

public static final int FOLLOWS
FOLLOWS means that the left (first parameter) record follows the right (second parameter) record in terms of search or sort order.

The value of FOLLOWS is 1.

See Also:
Constant Field Values

PRECEDES

public static final int PRECEDES
PRECEDES means that the left (first parameter) record precedes the right (second parameter) record in terms of search or sort order.

The value of PRECEDES is -1.

See Also:
Constant Field Values
Method Detail

compare

public int compare(byte[] rec1,
                   byte[] rec2)
Returns RecordComparator.PRECEDES if rec1 precedes rec2 in sort order, or RecordComparator.FOLLOWS if rec1 follows rec2 in sort order, or RecordComparator.EQUIVALENT if rec1 and rec2 are equivalent in terms of sort order.

Parameters:
rec1 - the first record to use for comparison. Within this method, the application must treat this parameter as read-only.
rec2 - the second record to use for comparison. Within this method, the application must treat this parameter as read-only.
Returns:
RecordComparator.PRECEDES if rec1 precedes rec2 in sort order, or RecordComparator.FOLLOWS if rec1 follows rec2 in sort order, or RecordComparator.EQUIVALENT if rec1 and rec2 are equivalent in terms of sort order

IM Profile

Submit a comment or suggestion Version 2.0 of IM Profile Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries. Copyright (c) 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road,Palo Alto, California, 94303, U.S.A. All Rights Reserved.