1 package com.daffodilwoods.daffodildb.server.datasystem.utility; 2 3 11 import com.daffodilwoods.daffodildb.utils.byteconverter.*; 12 import com.daffodilwoods.database.resource.DException; 13 import com.daffodilwoods.daffodildb.server.datasystem.interfaces.Datatype; 14 import com.daffodilwoods.daffodildb.server.sql99.utils._Reference; 15 import java.text.Collator ; 16 import com.daffodilwoods.daffodildb.utils.byteconverter.CCzufIboemfsGbdupsz; 17 18 public class ByteHandler implements Datatype{ 19 20 public ByteHandler() { 21 } 22 23 public static CbCzufIboemfs getByteHandler(int type,int size,Collator collator) throws DException{ 24 CCzufIboemfsGbdupsz byteHandlerFactory = CCzufIboemfsGbdupsz.getByteHandlerFactory(); 25 switch (type ){ 26 case BINARY : 27 return byteHandlerFactory.getBinaryHandler(size); 28 case VARBINARY : 29 return byteHandlerFactory.getVarBinaryHandler(size); 30 case CHARVARYING : 31 case CHARACTERVARYING : 32 case BITVARYING : 33 case VARCHAR : 34 return byteHandlerFactory.getVariableStringHandler(size,collator); 35 case BIT : 36 case CHAR : 37 case CHARACTER : 38 return byteHandlerFactory.getStringHandler(size,' ',collator); 39 case BOOLEAN : 40 return byteHandlerFactory.getBooleanHandler(); 41 case TIME : 42 return byteHandlerFactory.getTimeHandler(); 43 case TIMESTAMP : 44 return byteHandlerFactory.getTimeStampHandler(); 45 case DATE : 46 return byteHandlerFactory.getDateHandler(); 47 case FLOAT : 48 case DOUBLEPRECISION : 49 case DOUBLE : 50 return byteHandlerFactory.getDoubleHandler(); 51 case REAL : 52 return byteHandlerFactory.getFloatHandler(); 53 case INT : 54 case INTEGER : 55 return byteHandlerFactory.getIntHandler(); 56 case LONG : 57 case BIGINT : 58 case MODULE : 59 return byteHandlerFactory.getLongHandler(); 60 case SMALLINT : 61 case SHORT : 62 return byteHandlerFactory.getShortHandler(); 63 64 case DEC : 65 case DECIMAL : 66 case NUMERIC : 67 case BIGDECIMAL : 68 return byteHandlerFactory.getBigDecimalHandler(); 69 case BINARYLARGEOBJECT : 70 case LONGVARBINARY : 71 case BLOB : 72 return byteHandlerFactory.getBlobHandler(); 73 case TINYINT : 74 case BYTE : 75 return byteHandlerFactory.getByteObjectHandler(); 76 case CHARACTERLARGEOBJECT : 77 case LONGVARCHAR : 78 case CHARLARGEOBJECT : 79 case CLOB : 80 return byteHandlerFactory.getClobHandler(); 81 case TABLEKEY : 82 return byteHandlerFactory.getTableKeyHandler(); 83 } 84 throw new DException( "DSE515", new Object []{new Integer (type)}); 85 } 86 } 87 | Popular Tags |