[cvs] expresso commit by yves: Yves Amaizo new Fixes about Time columns

JCorporate Ltd jcorp at jcorporate.com
Wed Nov 9 14:51:07 UTC 2005


Log Message:
-----------
Yves Amaizo new Fixes about Time columns handling commit today 2005/11/09 15:45 french time.
Bug corning JDBCExecutor - JDBCDataObject - DBObject - MultiDBObject, fix. PB submitted by M TRAUM

Modified Files:
--------------
    expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc:
        JDBCExecutor.java
        JDBCDataObject.java
    expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj:
        DBObject.java
        MultiDBObject.java

Revision Data
-------------
Index: JDBCExecutor.java
===================================================================
RCS file: /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCExecutor.java,v
retrieving revision 1.70
retrieving revision 1.71
diff -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCExecutor.java -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCExecutor.java -u -r1.70 -r1.71
--- expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCExecutor.java
+++ expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCExecutor.java
@@ -93,6 +93,7 @@
 import java.sql.Date;
 import java.sql.SQLException;
 import java.sql.SQLWarning;
+import java.sql.Time;
 import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -223,7 +224,7 @@
                         if (needCommaValues) {
                             valuesCommand.append(", ");
                         }
-                        if (oneField.isDateType()) {
+                        if (oneField.isDateType() || oneField.isTimeType() || oneField.isDateTimeType()) {
                             Object tmpData = valueObject.get(oneField.getName());
                             String data;
                             //
@@ -744,7 +745,7 @@
                             sqlCommand.append(oneField.getName());
                             sqlCommand.append(" = ");
 
-                            if (oneField.isDateType()) {
+                            if (oneField.isDateType() || oneField.isTimeType() || oneField.isDateTimeType()) {
                                 Object tmpData = valueObject.get(oneField.getName());
                                 String data;
                                 //
@@ -1136,7 +1137,9 @@
                                 try {
                                     //   * @author	  Yves Henri AMAIZO
                                     //   Handle correctly date from resultSet data retrieve from Database
-                                    if (oneField.isDateType()) {
+                                    //   Fix for retrieve time datatye and other specials type like CLOB
+                                    //   Modified today 09/11/2005 12:10 french time
+                                    if (oneField.isDateType() || oneField.isTimeType() || oneField.isTimeType()) {
                                         tmpData = theObject.getCustomStringFieldValue(myConnection, oneField.getName());
                                     } else {
                                         if (!oneField.isLongBinaryType() && !DBField.CLOB_TYPE.equals(oneField.getTypeString())) {
@@ -1158,10 +1161,15 @@
                                                         tmpData = content;
                                                     }
                                                 }
-                                            } else {
-                                                tmpData = myConnection.getStringNoTrim(i);
-                                            }
-
+                                            } else 
+                                                if (DBField.CLOB_TYPE.equals(oneField.getTypeString()) || DBField.TEXT_TYPE.equals(oneField.getTypeString())) {
+                                                    tmpData = myConnection.getClob(i);
+                                                } else                                                 
+                                                    if (DBField.BLOB_TYPE.equals(oneField.getTypeString())) {
+                                                        tmpData = myConnection.getBlob(i);
+                                                    } else {
+                                                        tmpData = myConnection.getStringNoTrim(i);
+                                                      }
                                         }
                                     }
                                 } catch (DBException de1) {
@@ -1877,7 +1885,7 @@
 						//   * @author	  Yves Henri AMAIZO
 						//   Handle correctly data from return code in statment Object 
 						oneField = theObject.getFieldMetaData(String.valueOf(returnCode));
-						if (oneField.isDateType()) {
+						if (oneField.isDateType() || oneField.isTimeType() || oneField.isDateTimeType()) {
 							oneFieldValue = theObject.getCustomStringFieldValue(myConnection,
 									oneField.getName());
 						} else {
@@ -1924,7 +1932,7 @@
                                     try {
                     					//   * @author	  Yves Henri AMAIZO
                     					//   Handle correctly data from resultSet data retrieve from Database
-                                       if (oneField.isDateType()) {
+                                       if (oneField.isDateType() || oneField.isTimeType() || oneField.isDateTimeType()) {
                                             oneFieldValue = theObject.getCustomStringFieldValue(myConnection,
                                                     oneField.getName());
                                         } else {
@@ -2141,11 +2149,15 @@
                         } else if (singleFieldMeta.getTypeString().equalsIgnoreCase("double")) {
                             prepStatement.setDouble(j + 1, Double.parseDouble(stringValue));
                         }
-                    } else if (singleFieldMeta.isDateType()) {
+                    } else if (singleFieldMeta.isDateType() || singleFieldMeta.isTimeType() || singleFieldMeta.isDateTimeType()) {
                         if (singleFieldMeta.isDateOnlyType()) {
                             Date dtOnly = java.sql.Date.valueOf(stringValue);
                             prepStatement.setDate(j + 1, dtOnly);
                         }
+                        if (singleFieldMeta.isTimeType()) {
+                            Time dts = Time.valueOf(stringValue);
+                            prepStatement.setTime(j + 1, dts);
+                        }
                         if (singleFieldMeta.isDateTimeType()) {
                             Timestamp dts = Timestamp.valueOf(stringValue);
                             prepStatement.setTimestamp(j + 1, dts);
@@ -2558,11 +2570,15 @@
                         } else if (singleFieldMeta.getTypeString().equalsIgnoreCase("double")) {
                             prepStatement.setDouble(j + 1, Double.parseDouble(stringValue));
                         }
-                    } else if (singleFieldMeta.isDateType()) {
+                    } else if (singleFieldMeta.isDateType() || singleFieldMeta.isTimeType() || singleFieldMeta.isDateTimeType()) {
                         if (singleFieldMeta.isDateOnlyType()) {
                             Date dtOnly = java.sql.Date.valueOf(stringValue);
                             prepStatement.setDate(j + 1, dtOnly);
                         }
+                        if (singleFieldMeta.isTimeType()) {
+                            Time dts = Time.valueOf(stringValue);
+                            prepStatement.setTime(j + 1, dts);
+                        }
                         if (singleFieldMeta.isDateTimeType()) {
                             Timestamp dts = Timestamp.valueOf(stringValue);
                             prepStatement.setTimestamp(j + 1, dts);
@@ -2959,10 +2975,14 @@
                         } else if (singleFieldMeta.getTypeString().equalsIgnoreCase("double")) {
                             prepStatement.setDouble(j + 1, Double.parseDouble(stringValue));
                         }
-                    } else if (singleFieldMeta.isDateType()) {
+                    } else if (singleFieldMeta.isDateType() || singleFieldMeta.isTimeType() || singleFieldMeta.isDateTimeType()) {
                         if (singleFieldMeta.isDateOnlyType()) {
                             Date dtOnly = java.sql.Date.valueOf(stringValue);
                             prepStatement.setDate(j + 1, dtOnly);
+                        }
+                        if (singleFieldMeta.isTimeType()) {
+                            Time dts = Time.valueOf(stringValue);
+                            prepStatement.setTime(j + 1, dts);
                         }
                         if (singleFieldMeta.isDateTimeType()) {
                             Timestamp dts = Timestamp.valueOf(stringValue);
Index: JDBCDataObject.java
===================================================================
RCS file: /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCDataObject.java,v
retrieving revision 1.51
retrieving revision 1.52
diff -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCDataObject.java -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCDataObject.java -u -r1.51 -r1.52
--- expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCDataObject.java
+++ expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JDBCDataObject.java
@@ -1240,7 +1240,9 @@
             try {
                 //   * @author	  Yves Henri AMAIZO
                 //   Handle correctly date from resultSet data retrieve from Database
-                if (oneDBField.isDateType()) {
+                //   Fix for retrieve time datatye and other specials type like CLOB
+                //   Modified today 09/11/2005 12:10 french time
+                if (oneDBField.isDateType() || oneDBField.isTimeType()) {
                     tmpData = getCustomStringFieldValue(myConnection, oneDBField.getName());
                 } else {
                     if (!oneDBField.isLongBinaryType() && !DBField.CLOB_TYPE.equals(oneDBField.getTypeString())) {
@@ -1263,10 +1265,16 @@
                                     tmpData = content;
                                 }
                             }
-                        } else { // CLOB case
-                            tmpData = myConnection.getStringNoTrim(i);
+                        } else //    CLOB case
+                            if (DBField.CLOB_TYPE.equals(oneDBField.getTypeString()) || DBField.TEXT_TYPE.equals(oneDBField.getTypeString())) {
+                                tmpData = myConnection.getClob(i);
+                            } else                                                 
+                                if (DBField.BLOB_TYPE.equals(oneDBField.getTypeString())) {
+                                    tmpData = myConnection.getBlob(i);
+                                } else {
+                                    tmpData = myConnection.getStringNoTrim(i);
+                                  }                    
                         }
-                    }
 
                 }
             } catch (DBException de) {
Index: DBObject.java
===================================================================
RCS file: /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/DBObject.java,v
retrieving revision 1.256
retrieving revision 1.257
diff -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/DBObject.java -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/DBObject.java -u -r1.256 -r1.257
--- expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/DBObject.java
+++ expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/DBObject.java
@@ -2419,7 +2419,7 @@
 //   * @author	  Yves Henri AMAIZO
 //   Handle correctly date from resultSet data retrieve from Database
                         try {
-                            if (oneField.isDateType()) {
+                            if (oneField.isDateType() || oneField.isTimeType()) {
                                 oneFieldValue = getCustomStringFieldValue(myConnection, oneField.getName());
                             } else {
 //								if (!oneField.isLongBinaryType() && !oneField.isLongCharacterType()) {
Index: MultiDBObject.java
===================================================================
RCS file: /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/MultiDBObject.java,v
retrieving revision 1.73
retrieving revision 1.74
diff -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/MultiDBObject.java -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/MultiDBObject.java -u -r1.73 -r1.74
--- expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/MultiDBObject.java
+++ expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/MultiDBObject.java
@@ -1665,7 +1665,7 @@
 							//   Handle correctly date from resultSet data retrieve from Database
 							//   17/05/2005 at 16:00 
                             
-							if (metaData.isDateType()) {
+							if (metaData.isDateType() || metaData.isTimeType()) {
 								tmpData = oneObj.getCustomStringFieldValue(myConnection, metaData.getName());
 							} else {
 								if (!metaData.isLongBinaryType() && !DBField.CLOB_TYPE.equals(metaData.getTypeString())) {
@@ -1687,10 +1687,15 @@
 												tmpData = content;
 											}
 										}
-									} else {
-										tmpData = myConnection.getStringNoTrim(rowStringIndex);
-									}
-
+									} else 
+			                            if (DBField.CLOB_TYPE.equals(metaData.getTypeString()) || DBField.TEXT_TYPE.equals(metaData.getTypeString())) {
+			                                tmpData = myConnection.getClob(rowStringIndex);
+			                            } else                                                 
+			                                if (DBField.BLOB_TYPE.equals(metaData.getTypeString())) {
+			                                    tmpData = myConnection.getBlob(rowStringIndex);
+			                                } else {
+			                                    tmpData = myConnection.getStringNoTrim(rowStringIndex);
+			                                  }                    
 								}
 							}
                             


More information about the cvs mailing list