You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bv...@apache.org on 2012/02/26 22:28:28 UTC

svn commit: r1293937 - in /camel/branches/camel-2.8.x: ./ camel-core/src/main/java/org/apache/camel/converter/ObjectConverter.java

Author: bvahdat
Date: Sun Feb 26 21:28:27 2012
New Revision: 1293937

URL: http://svn.apache.org/viewvc?rev=1293937&view=rev
Log:
Merged revisions 1293935 via svnmerge from 
https://svn.apache.org/repos/asf/camel/branches/camel-2.9.x

................
  r1293935 | bvahdat | 2012-02-26 22:06:48 +0100 (So, 26 Feb 2012) | 9 lines
  
  Merged revisions 1293828 via svnmerge from 
  https://svn.apache.org/repos/asf/camel/trunk
  
  ........
    r1293828 | bvahdat | 2012-02-26 14:00:41 +0100 (So, 26 Feb 2012) | 1 line
    
    CAMEL-4959: Did "Refactor to Method" for the case if the to be converted value is NaN. Although did tiny cleanup by the other converter methods.
  ........
................

Modified:
    camel/branches/camel-2.8.x/   (props changed)
    camel/branches/camel-2.8.x/camel-core/src/main/java/org/apache/camel/converter/ObjectConverter.java

Propchange: camel/branches/camel-2.8.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sun Feb 26 21:28:27 2012
@@ -1,2 +1,2 @@
-/camel/branches/camel-2.9.x:1227549,1228229,1229567,1234054,1236672,1238942,1240157,1241006,1241489,1243052,1243058,1244875,1244877,1291871,1292116,1292389,1292726,1292769,1293082
-/camel/trunk:1226860,1227540,1228223,1229565,1234043,1236667,1238937,1240025,1240950,1240967,1241482,1243046,1243057,1244870,1244872,1291848,1292114,1292384,1292725,1292767,1293079
+/camel/branches/camel-2.9.x:1227549,1228229,1229567,1234054,1236672,1238942,1240157,1241006,1241489,1243052,1243058,1244875,1244877,1291871,1292116,1292389,1292726,1292769,1293082,1293935
+/camel/trunk:1226860,1227540,1228223,1229565,1234043,1236667,1238937,1240025,1240950,1240967,1241482,1243046,1243057,1244870,1244872,1291848,1292114,1292384,1292725,1292767,1293079,1293828

Propchange: camel/branches/camel-2.8.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: camel/branches/camel-2.8.x/camel-core/src/main/java/org/apache/camel/converter/ObjectConverter.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/camel-core/src/main/java/org/apache/camel/converter/ObjectConverter.java?rev=1293937&r1=1293936&r2=1293937&view=diff
==============================================================================
--- camel/branches/camel-2.8.x/camel-core/src/main/java/org/apache/camel/converter/ObjectConverter.java (original)
+++ camel/branches/camel-2.8.x/camel-core/src/main/java/org/apache/camel/converter/ObjectConverter.java Sun Feb 26 21:28:27 2012
@@ -80,9 +80,9 @@ public final class ObjectConverter {
         if (value instanceof Byte) {
             return (Byte) value;
         } else if (value instanceof Number) {
-            if (value.equals(Float.NaN) || value.equals(Double.NaN)) {
+            if (isNaN(value)) {
                 // return zero for a NaN value
-                return Byte.valueOf("0");
+                return Byte.valueOf((byte) 0);
             }
             Number number = (Number) value;
             return number.byteValue();
@@ -100,11 +100,11 @@ public final class ObjectConverter {
 
     @Converter
     public static char toChar(String value) {
-        // must be 1 length string
+        // must be string with the length of 1
         if (value == null || value.length() != 1) {
             throw new IllegalArgumentException("String must have exactly a length of 1: " + value);
         }
-        return value.toCharArray()[0];
+        return value.charAt(0);
     }
 
     @Converter
@@ -139,9 +139,9 @@ public final class ObjectConverter {
         if (value instanceof Short) {
             return (Short) value;
         } else if (value instanceof Number) {
-            if (value.equals(Float.NaN) || value.equals(Double.NaN)) {
+            if (isNaN(value)) {
                 // return zero for a NaN value
-                return Short.valueOf("0");
+                return Short.valueOf((short) 0);
             }
             Number number = (Number) value;
             return number.shortValue();
@@ -160,7 +160,7 @@ public final class ObjectConverter {
         if (value instanceof Integer) {
             return (Integer) value;
         } else if (value instanceof Number) {
-            if (value.equals(Float.NaN) || value.equals(Double.NaN)) {
+            if (isNaN(value)) {
                 // return zero for a NaN value
                 return Integer.valueOf(0);
             }
@@ -181,7 +181,7 @@ public final class ObjectConverter {
         if (value instanceof Long) {
             return (Long) value;
         } else if (value instanceof Number) {
-            if (value.equals(Float.NaN) || value.equals(Double.NaN)) {
+            if (isNaN(value)) {
                 // return zero for a NaN value
                 return Long.valueOf(0);
             }
@@ -202,7 +202,7 @@ public final class ObjectConverter {
         if (value instanceof Float) {
             return (Float) value;
         } else if (value instanceof Number) {
-            if (value.equals(Double.NaN) || value.equals(Float.NaN)) {
+            if (isNaN(value)) {
                 return Float.NaN;
             }
             Number number = (Number) value;
@@ -222,7 +222,7 @@ public final class ObjectConverter {
         if (value instanceof Double) {
             return (Double) value;
         } else if (value instanceof Number) {
-            if (value.equals(Double.NaN) || value.equals(Float.NaN)) {
+            if (isNaN(value)) {
                 return Double.NaN;
             }
             Number number = (Number) value;
@@ -234,6 +234,11 @@ public final class ObjectConverter {
         }
     }
 
+    private static boolean isNaN(Object value) {
+        // 'value' should have been already checked to be 'instanceof Number', that's 'value != null'
+        return value.equals(Float.NaN) || value.equals(Double.NaN);
+    }
+
     // add fast type converters from most common used
 
     @Converter
@@ -283,7 +288,7 @@ public final class ObjectConverter {
 
     @Converter
     public static Boolean toBoolean(String value) {
-        return "true".equalsIgnoreCase(value.toString()) ? Boolean.TRUE : Boolean.FALSE;
+        return Boolean.parseBoolean(value);
     }
 
 }