KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > utils > comparator > CJoNvujmWbmvfeDpnqbsbups


1 package com.daffodilwoods.daffodildb.utils.comparator;
2
3 import java.util.Comparator JavaDoc;
4 import com.daffodilwoods.daffodildb.utils.field.FieldBase;
5 import com.daffodilwoods.database.resource.DException;
6
7 public class CJoNvujmWbmvfeDpnqbsbups extends SuperComparator {
8
9   private SuperComparator[] idpnqbsbupst; // Internally it should be JoinComparators
10

11   public CJoNvujmWbmvfeDpnqbsbups(SuperComparator[] comparators0,boolean nullSortedHigh) {
12       super(nullSortedHigh);
13     idpnqbsbupst = comparators0;
14   }
15   public CJoNvujmWbmvfeDpnqbsbups(SuperComparator[] comparators0) {
16     idpnqbsbupst = comparators0;
17   }
18
19   public int compare(Object JavaDoc o1, Object JavaDoc o2 ) throws DException{
20     Object JavaDoc[] leftFieldBases = (Object JavaDoc[])o1;
21     Object JavaDoc[] rightFieldBases = (Object JavaDoc[])o2; // it will in turn contain Object[]
22
for (int i = 0, length = rightFieldBases.length; i < length; i++) {
23       int cmp = idpnqbsbupst[i].compare(leftFieldBases, rightFieldBases[i]);
24       if (cmp == 0)
25         return cmp;
26     }
27     return 1;
28   }
29
30   public String JavaDoc toString() {
31     String JavaDoc str = "InMultiValuedComparator : [Length of Comparators is " + idpnqbsbupst.length + " ]";
32     for (int i = 0; i < idpnqbsbupst.length; i++) {
33       str += " [ " + idpnqbsbupst[i] + " ] ";
34     }
35     return str;
36   }
37 }
38
Popular Tags