svn commit: r908692 - /ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/Converters.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r908692 - /ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/Converters.java

doogie-3
Author: doogie
Date: Wed Feb 10 22:34:10 2010
New Revision: 908692

URL: http://svn.apache.org/viewvc?rev=908692&view=rev
Log:
Add registerConverter variant that allows for specifying the
source/target classes.

Modified:
    ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/Converters.java

Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/Converters.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/Converters.java?rev=908692&r1=908691&r2=908692&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/Converters.java (original)
+++ ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/Converters.java Wed Feb 10 22:34:10 2010
@@ -137,7 +137,23 @@
      * @param converter The <code>Converter</code> instance to register
      */
     public static <S, T> void registerConverter(Converter<S, T> converter) {
-        String key = converter.getSourceClass().getName().concat(DELIMITER).concat(converter.getTargetClass().getName());
+        registerConverter(converter, converter.getSourceClass(), converter.getTargetClass());
+    }
+
+    public static <S, T> void registerConverter(Converter<S, T> converter, Class<?> sourceClass, Class<?> targetClass) {
+        StringBuilder sb = new StringBuilder();
+        if (sourceClass != null) {
+            sb.append(sourceClass.getName());
+        } else {
+            sb.append("<null>");
+        }
+        sb.append(DELIMITER);
+        if (targetClass != null) {
+            sb.append(targetClass.getName());
+        } else {
+            sb.append("<null>");
+        }
+        String key = sb.toString();
         if (converterMap.get(key) == null) {
             synchronized (converterMap) {
                 converterMap.put(key, converter);