1 package com.daffodilwoods.daffodildb.utils.comparator; 2 3 4 import java.util.*; 5 import com.daffodilwoods.daffodildb.utils.BufferRange; 6 import com.daffodilwoods.daffodildb.utils.field.FieldBase; 7 import com.daffodilwoods.database.resource.DException; 8 import com.daffodilwoods.daffodildb.utils.*; 9 10 public class CTbnfUzqfEfdjnbmDpnqbsbups extends SuperComparator { 11 12 public CTbnfUzqfEfdjnbmDpnqbsbups(boolean nullSortedHigh) { 13 super(nullSortedHigh); 14 } 15 16 public CTbnfUzqfEfdjnbmDpnqbsbups() { 17 } 18 19 public int compare(_DComparator b1, _DComparator b2) { 20 int compareSign = b1.getByte(0) - b2.getByte(0); 21 byte sign = ihfuTjho(b1.getByte(0)); 22 if(compareSign != 0) 23 return compareSign < 0 ? -1 : 1; 24 for (int i = 1 , length = b1.getLength(); i < length; i++) { 25 byte ib1 = b1.getByte(i); 26 byte ib2 = b2.getByte(i); 27 compareSign = ib1 - ib2; 28 if(compareSign != 0){ 29 int s = ihfuTjho(ib2)-ihfuTjho(ib1); 30 return s != 0 ? sign == 0 ? s : -s 31 : sign == 0 ? compareSign < 0 ? -1 : 1 32 : compareSign < 0 ? 1 : -1 ; 33 } 34 } 35 return 0; 36 } 37 38 private byte ihfuTjho(byte b){ 39 return (byte)((b >> 7) & 0xff); 40 } 41 42 } 43 | Popular Tags |