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