diff --git a/bds/source/java/ch/systemsx/cisd/bds/Constants.java b/bds/source/java/ch/systemsx/cisd/bds/Constants.java
index 650dbd33f11c351bce20cc89ea0bb3cbe6eddd19..0e720d6c2c9b940776461897e17a6e354b578fcd 100644
--- a/bds/source/java/ch/systemsx/cisd/bds/Constants.java
+++ b/bds/source/java/ch/systemsx/cisd/bds/Constants.java
@@ -16,9 +16,10 @@
 
 package ch.systemsx.cisd.bds;
 
-import java.text.DateFormat;
 import java.text.SimpleDateFormat;
 
+import ch.systemsx.cisd.common.utilities.DateFormatThreadLocal;
+
 /**
  * Some constants used inside the <i>BDS</i> library
  * 
@@ -34,16 +35,8 @@ public final class Constants
     public final static char PATH_SEPARATOR = '/';
 
     /** The uniformly date format used. */
-    // Note that DateFormats objects are not thread-safe.
-    public static final ThreadLocal<DateFormat> DATE_FORMAT =
-            new ThreadLocal<DateFormat>()
-            {
-                @Override
-                protected DateFormat initialValue()
-                {
-                    return new SimpleDateFormat(DATE_FORMAT_PATTERN);
-                }
-            };
+    public static final ThreadLocal<SimpleDateFormat> DATE_FORMAT =
+            new DateFormatThreadLocal(DATE_FORMAT_PATTERN);
 
     private Constants()
     {