Author: gadams
Date: Wed May  9 12:20:34 2012
New Revision: 1336129

URL: http://svn.apache.org/viewvc?rev=1336129&view=rev
Log:
Bugzilla #53185: Unify date formatting between FOP and XGC as well as tidying 
the date format code. Submitted by Robert Meyer.

Modified:
    xmlgraphics/fop/trunk/lib/xmlgraphics-commons-1.5svn.jar
    xmlgraphics/fop/trunk/src/java/org/apache/fop/pdf/PDFInfo.java
    xmlgraphics/fop/trunk/status.xml

Modified: xmlgraphics/fop/trunk/lib/xmlgraphics-commons-1.5svn.jar
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/lib/xmlgraphics-commons-1.5svn.jar?rev=1336129&r1=1336128&r2=1336129&view=diff
==============================================================================
Binary files - no diff available.

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/pdf/PDFInfo.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/pdf/PDFInfo.java?rev=1336129&r1=1336128&r2=1336129&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/pdf/PDFInfo.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/pdf/PDFInfo.java Wed May  9 
12:20:34 2012
@@ -21,12 +21,11 @@ package org.apache.fop.pdf;
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
 import java.util.Date;
-import java.util.Locale;
 import java.util.TimeZone;
 
+import org.apache.xmlgraphics.util.DateFormatUtil;
+
 /**
  * class representing an /Info object
  */
@@ -236,57 +235,13 @@ public class PDFInfo extends PDFObject {
     }
 
     /**
-     * Returns a SimpleDateFormat instance for formatting PDF date-times.
-     * @return a new SimpleDateFormat instance
-     */
-    protected static SimpleDateFormat getPDFDateFormat() {
-        SimpleDateFormat df = new SimpleDateFormat("'D:'yyyyMMddHHmmss", 
Locale.ENGLISH);
-        df.setTimeZone(TimeZone.getTimeZone("GMT"));
-        return df;
-    }
-
-    /**
      * Formats a date/time according to the PDF specification 
(D:YYYYMMDDHHmmSSOHH'mm').
      * @param time date/time value to format
      * @param tz the time zone
      * @return the requested String representation
      */
-    protected static String formatDateTime(Date time, TimeZone tz) {
-        Calendar cal = Calendar.getInstance(tz, Locale.ENGLISH);
-        cal.setTime(time);
-
-        int offset = cal.get(Calendar.ZONE_OFFSET);
-        offset += cal.get(Calendar.DST_OFFSET);
-
-        // DateFormat is operating on GMT so adjust for time zone offset
-        Date dt1 = new Date(time.getTime() + offset);
-        StringBuffer sb = new StringBuffer();
-        sb.append(getPDFDateFormat().format(dt1));
-
-        offset /= (1000 * 60); // Convert to minutes
-
-        if (offset == 0) {
-            sb.append('Z');
-        } else {
-            if (offset > 0) {
-                sb.append('+');
-            } else {
-                sb.append('-');
-            }
-            int offsetHour = Math.abs(offset / 60);
-            int offsetMinutes = Math.abs(offset % 60);
-            if (offsetHour < 10) {
-                sb.append('0');
-            }
-            sb.append(Integer.toString(offsetHour));
-            sb.append('\'');
-            if (offsetMinutes < 10) {
-                sb.append('0');
-            }
-            sb.append(Integer.toString(offsetMinutes));
-            sb.append('\'');
-        }
-        return sb.toString();
+    protected static String formatDateTime(final Date time, TimeZone tz) {
+        return DateFormatUtil.formatPDFDate(time, tz);
     }
 
     /**
@@ -294,7 +249,7 @@ public class PDFInfo extends PDFObject {
      * @param time date/time value to format
      * @return the requested String representation
      */
-    protected static String formatDateTime(Date time) {
+    protected static String formatDateTime(final Date time) {
         return formatDateTime(time, TimeZone.getDefault());
     }
 }

Modified: xmlgraphics/fop/trunk/status.xml
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/status.xml?rev=1336129&r1=1336128&r2=1336129&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/status.xml (original)
+++ xmlgraphics/fop/trunk/status.xml Wed May  9 12:20:34 2012
@@ -63,6 +63,9 @@
       documents. Example: the fix of marks layering will be such a case when 
it's done.
     -->
     <release version="FOP Trunk" date="TBD">
+      <action context="Layout" dev="GA" type="fix" fixes-bug="53185" 
due-to="Robert Meyer">
+        Unify date formatting between FOP and XGC as well as tidying the date 
format code.
+      </action>
       <action context="Layout" dev="GA" type="fix" fixes-bug="45715" 
due-to="Luis Bernardo">
         Break before (break-before) not respected on blocks nested in inlines.
       </action>



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to