1 package com.daffodilwoods.daffodildb.utils.field; 2 3 import com.daffodilwoods.daffodildb.server.sql99.common.Datatypes; 4 import com.daffodilwoods.database.resource.DException; 5 import com.daffodilwoods.daffodildb.utils.BufferRange; 6 import java.math.*; 7 import com.daffodilwoods.daffodildb.utils.GetByteComparator; 8 9 public class FieldBigDecimal 10 extends FieldBase 11 implements Datatypes, Comparable { 12 13 public FieldBigDecimal(BufferRange bufferRange0, int datatype0) { 14 bufferRange = bufferRange0; 15 datatype = datatype0; 16 } 17 18 public Object getObject() throws DException { 19 20 if (bufferRange.getNull()) 21 return null; 22 if (object != null) 23 return object; 24 String ss1 = new String (bufferRange.getFulBytes(), bufferRange.getOffSet(), 25 bufferRange.getLength()); 26 object = new BigDecimal(ss1.trim()); 27 return object; 28 } 29 30 public boolean equals(Object fieldBase) { 31 try { 32 return (getDatatype() != ( (FieldBase) fieldBase).getDatatype()) ? false : 33 GetByteComparator.bigDecimalComparator.compare(this, fieldBase) == 0; 34 } 35 catch (DException ex) { 36 return false; 37 } 38 } 39 40 public int compareTo(Object fieldBase) { 41 try { 42 return (GetByteComparator.bigDecimalComparator.compare(this, fieldBase)); 43 } 44 catch (DException ex) { 45 return -1; 46 } 47 } 48 49 } 50 | Popular Tags |