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(); // class implements RecordComparator
   if (c.compare(recordStore.getRecord(rec1), recordStore.getRecord(rec2)) == RecordComparator.PRECEDES)
       return rec1;
   


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.


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.


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.

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.



Copyright 1999-2009 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.