KickJava   Java API By Example, From Geeks To Geeks.

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


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 com.daffodilwoods.daffodildb.utils.GetByteComparator;
7 import java.util.*;
8
9 public class FieldDate extends FieldBase implements Datatypes,Comparable JavaDoc{
10
11     public FieldDate(BufferRange bufferRange0,int datatype0) {
12       bufferRange = bufferRange0;
13       datatype = datatype0;
14     }
15
16     public Object JavaDoc getObject() throws DException{
17         if(bufferRange.getNull())
18             return null;
19           if(object!=null)
20             return object;
21        return object= new com.daffodilwoods.daffodildb.utils.DBDate(getLong());
22
23         }
24
25     private long getLong(){
26         long a = 0;
27         for(int i = 0 , j = 56 ; i < 8 ; i++ , j -= 8)
28               a += ((long)bufferRange.getByte(i) & 0xFF) << j;
29         return a;
30     }
31
32     public boolean equals(Object JavaDoc fieldBase){
33         try {
34             return (getDatatype() != ((FieldBase)fieldBase).getDatatype()) ? false : GetByteComparator.sameComparator.compare(this,fieldBase) == 0;
35         }
36         catch (DException ex) {
37             return false;
38         }
39     }
40
41     public int compareTo(Object JavaDoc fieldBase){
42        try {
43            return GetByteComparator.sameComparator.compare(this,fieldBase) ;
44        }
45        catch (DException ex) {
46            return -1;
47        }
48    }
49
50
51 }
52
Popular Tags