KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > utils > field > FieldBigDecimal


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 JavaDoc {
12
13   public FieldBigDecimal(BufferRange bufferRange0, int datatype0) {
14     bufferRange = bufferRange0;
15     datatype = datatype0;
16   }
17
18   public Object JavaDoc getObject() throws DException {
19
20     if (bufferRange.getNull())
21       return null;
22     if (object != null)
23       return object;
24     String JavaDoc ss1 = new String JavaDoc(bufferRange.getFulBytes(), bufferRange.getOffSet(),
25                             bufferRange.getLength());
26     object = new BigDecimal(ss1.trim());
27     return object;
28   }
29
30   public boolean equals(Object JavaDoc 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 JavaDoc 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