Author: tv
Date: Mon Jan  6 13:45:27 2020
New Revision: 1872379

URL: http://svn.apache.org/viewvc?rev=1872379&view=rev
Log:
Refactor time/date/timestamp-string formatting

Modified:
    
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
    
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
    
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
    
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMssqlImpl.java
    
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
    
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformOracleImpl.java

Modified: 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java?rev=1872379&r1=1872378&r2=1872379&view=diff
==============================================================================
--- 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
 (original)
+++ 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDefaultImpl.java
 Mon Jan  6 13:45:27 2020
@@ -19,12 +19,12 @@ package org.apache.torque.templates.plat
  * under the License.
  */
 
-import java.text.SimpleDateFormat;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
 import java.util.Collections;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.TimeZone;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.torque.templates.typemapping.SchemaType;
@@ -95,6 +95,20 @@ public class PlatformDefaultImpl impleme
         }
         schemaTypeToSqlTypeMap.put(schemaType, sqlType);
     }
+    
+    /**
+     * Helper function to format date values to a platform-specific string
+     * 
+     * @param date the Date object
+     * @param format the format string
+     * @return the formatted string
+     */
+    protected String formatDateTimeString(Date date, String format)
+    {
+        return DateTimeFormatter.ofPattern(format)
+                .format(date.toInstant()
+                        .atZone(ZoneId.of("GMT")));
+    }
 
     /**
      * @see Platform#getSqlTypeForSchemaType(SchemaType)
@@ -218,9 +232,7 @@ public class PlatformDefaultImpl impleme
     @Override
     public String getTimestampString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(TIMESTAMP_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, TIMESTAMP_FORMAT);
     }
 
     /**

Modified: 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java?rev=1872379&r1=1872378&r2=1872379&view=diff
==============================================================================
--- 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
 (original)
+++ 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformDerbyImpl.java
 Mon Jan  6 13:45:27 2020
@@ -67,7 +67,7 @@ public class PlatformDerbyImpl extends P
                 new SqlType("SMALLINT"));
     }
 
-    /* (non-Javadoc)
+    /**
      * @see 
org.apache.torque.templates.platform.PlatformDefaultImpl#getAutoIncrement()
      */
     @Override
@@ -76,7 +76,7 @@ public class PlatformDerbyImpl extends P
         return "GENERATED BY DEFAULT AS IDENTITY";
     }
 
-    /* (non-Javadoc)
+    /**
      * @see 
org.apache.torque.templates.platform.PlatformDefaultImpl#hasScale(java.lang.String)
      */
     @Override
@@ -85,7 +85,7 @@ public class PlatformDerbyImpl extends P
         return "NUMERIC".equals(sqlType) || "DECIMAL".equals(sqlType);
     }
 
-    /* (non-Javadoc)
+    /**
      * @see 
org.apache.torque.templates.platform.PlatformDefaultImpl#hasSize(java.lang.String)
      */
     @Override

Modified: 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java?rev=1872379&r1=1872378&r2=1872379&view=diff
==============================================================================
--- 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
 (original)
+++ 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformHsqldbImpl.java
 Mon Jan  6 13:45:27 2020
@@ -19,9 +19,7 @@ package org.apache.torque.templates.plat
  * under the License.
  */
 
-import java.text.SimpleDateFormat;
 import java.util.Date;
-import java.util.TimeZone;
 
 import org.apache.torque.templates.typemapping.SchemaType;
 import org.apache.torque.templates.typemapping.SqlType;
@@ -97,9 +95,7 @@ public class PlatformHsqldbImpl extends
     @Override
     public String getDateString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, DATE_FORMAT);
     }
     
     
@@ -110,9 +106,7 @@ public class PlatformHsqldbImpl extends
     @Override
     public String getTimeString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(TIME_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, TIME_FORMAT);
     }
 
     /**

Modified: 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMssqlImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMssqlImpl.java?rev=1872379&r1=1872378&r2=1872379&view=diff
==============================================================================
--- 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMssqlImpl.java
 (original)
+++ 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMssqlImpl.java
 Mon Jan  6 13:45:27 2020
@@ -19,9 +19,7 @@ package org.apache.torque.templates.plat
  * under the License.
  */
 
-import java.text.SimpleDateFormat;
 import java.util.Date;
-import java.util.TimeZone;
 
 import org.apache.torque.templates.typemapping.SchemaType;
 import org.apache.torque.templates.typemapping.SqlType;
@@ -107,9 +105,7 @@ public class PlatformMssqlImpl extends P
     @Override
     public String getTimestampString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, DATE_FORMAT);
     }
 
     /**

Modified: 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java?rev=1872379&r1=1872378&r2=1872379&view=diff
==============================================================================
--- 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
 (original)
+++ 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformMysqlImpl.java
 Mon Jan  6 13:45:27 2020
@@ -19,11 +19,7 @@ package org.apache.torque.templates.plat
  * under the License.
  */
 
-import java.text.SimpleDateFormat;
-import java.time.ZoneId;
-import java.time.format.DateTimeFormatter;
 import java.util.Date;
-import java.util.TimeZone;
 
 import org.apache.torque.templates.typemapping.SchemaType;
 import org.apache.torque.templates.typemapping.SqlType;
@@ -127,9 +123,7 @@ public class PlatformMysqlImpl extends P
     @Override
     public String getDateString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, DATE_FORMAT);
     }
     
     /**
@@ -138,10 +132,7 @@ public class PlatformMysqlImpl extends P
     @Override
     public String getTimestampString(Date date)
     {
-            return DateTimeFormatter.ofPattern(TIMESTAMP_FORMAT )
-                    //.withZone( ZoneId.of("GMT") )
-                    .format(date.toInstant()
-                            .atZone(ZoneId.of("GMT")));
+        return formatDateTimeString(date, TIMESTAMP_FORMAT);
     }
     
     /**

Modified: 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformOracleImpl.java
URL: 
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformOracleImpl.java?rev=1872379&r1=1872378&r2=1872379&view=diff
==============================================================================
--- 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformOracleImpl.java
 (original)
+++ 
db/torque/torque4/trunk/torque-templates/src/main/java/org/apache/torque/templates/platform/PlatformOracleImpl.java
 Mon Jan  6 13:45:27 2020
@@ -19,9 +19,7 @@ package org.apache.torque.templates.plat
  * under the License.
  */
 
-import java.text.SimpleDateFormat;
 import java.util.Date;
-import java.util.TimeZone;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.torque.templates.typemapping.SchemaType;
@@ -150,9 +148,7 @@ public class PlatformOracleImpl extends
     @Override
     public String getDateString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, DATE_FORMAT);
     }
 
     /**
@@ -161,9 +157,7 @@ public class PlatformOracleImpl extends
     @Override
     public String getTimeString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(TIME_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, TIME_FORMAT);
     }
 
     /**
@@ -172,9 +166,7 @@ public class PlatformOracleImpl extends
     @Override
     public String getTimestampString(Date date)
     {
-        SimpleDateFormat dateFormat = new SimpleDateFormat(TIMESTAMP_FORMAT);
-        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return dateFormat.format(date);
+        return formatDateTimeString(date, TIMESTAMP_FORMAT);
     }
 
     /**



---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscr...@db.apache.org
For additional commands, e-mail: torque-dev-h...@db.apache.org

Reply via email to