You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by al...@apache.org on 2014/07/15 17:20:10 UTC

[1/3] git commit: trim string value before transform it in a primitive

Repository: incubator-brooklyn
Updated Branches:
  refs/heads/master a09ae7d49 -> b74e76c35


trim string value before transform it in a primitive


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/de6fbd3d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/de6fbd3d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/de6fbd3d

Branch: refs/heads/master
Commit: de6fbd3d542c5232fdf78b0ae7ec5811c9ae0b5e
Parents: 342a336
Author: Andrea Turli <an...@gmail.com>
Authored: Fri Jul 11 11:49:48 2014 +0200
Committer: Andrea Turli <an...@gmail.com>
Committed: Fri Jul 11 11:49:48 2014 +0200

----------------------------------------------------------------------
 .../java/brooklyn/util/flags/TypeCoercions.java | 35 ++++++++++----------
 1 file changed, 17 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/de6fbd3d/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/util/flags/TypeCoercions.java b/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
index 01b808e..3036654 100644
--- a/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
+++ b/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
@@ -18,9 +18,6 @@
  */
 package brooklyn.util.flags;
 
-import groovy.lang.Closure;
-import groovy.time.TimeDuration;
-
 import java.io.IOException;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.Method;
@@ -46,6 +43,19 @@ import org.codehaus.jackson.map.ObjectMapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import com.google.common.base.CaseFormat;
+import com.google.common.base.Function;
+import com.google.common.base.Preconditions;
+import com.google.common.base.Predicate;
+import com.google.common.base.Splitter;
+import com.google.common.collect.HashBasedTable;
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Table;
+import com.google.common.net.HostAndPort;
+import com.google.common.primitives.Primitives;
+import com.google.common.reflect.TypeToken;
+
 import brooklyn.entity.basic.ClosureEntityFactory;
 import brooklyn.entity.basic.ConfigurableEntityFactory;
 import brooklyn.entity.basic.ConfigurableEntityFactoryFromEntityFactory;
@@ -59,19 +69,8 @@ import brooklyn.util.net.Networking;
 import brooklyn.util.net.UserAndHostAndPort;
 import brooklyn.util.text.StringEscapes.JavaStringEscapes;
 import brooklyn.util.time.Duration;
-
-import com.google.common.base.CaseFormat;
-import com.google.common.base.Function;
-import com.google.common.base.Preconditions;
-import com.google.common.base.Predicate;
-import com.google.common.base.Splitter;
-import com.google.common.collect.HashBasedTable;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.Table;
-import com.google.common.net.HostAndPort;
-import com.google.common.primitives.Primitives;
-import com.google.common.reflect.TypeToken;
+import groovy.lang.Closure;
+import groovy.time.TimeDuration;
 
 public class TypeCoercions {
 
@@ -326,7 +325,7 @@ public class TypeCoercions {
     @SuppressWarnings("unchecked")
     public static <T> T stringToPrimitive(String value, Class<T> targetType) {
         assert Primitives.allPrimitiveTypes().contains(targetType) || Primitives.allWrapperTypes().contains(targetType) : "targetType="+targetType;
-
+        value = value.trim();
         // If char, then need to do explicit conversion
         if (targetType == Character.class || targetType == char.class) {
             if (value.length() == 1) {
@@ -335,7 +334,7 @@ public class TypeCoercions {
                 throw new ClassCoercionException("Cannot coerce type String to "+targetType.getCanonicalName()+" ("+value+"): adapting failed");
             }
         }
-        
+
         // For boolean we could use valueOf, but that returns false whereas we'd rather throw errors on bad values
         if (targetType == Boolean.class || targetType == boolean.class) {
             if ("true".equalsIgnoreCase(value)) return (T) Boolean.TRUE;


[2/3] git commit: add unit tests to testCoerceStringToPrimitive

Posted by al...@apache.org.
add unit tests to testCoerceStringToPrimitive


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/ab9de806
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/ab9de806
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/ab9de806

Branch: refs/heads/master
Commit: ab9de806b3d51a22c83ec4946804e44d6a8ef8f5
Parents: de6fbd3
Author: Andrea Turli <an...@gmail.com>
Authored: Mon Jul 14 13:30:00 2014 +0200
Committer: Andrea Turli <an...@gmail.com>
Committed: Mon Jul 14 13:30:00 2014 +0200

----------------------------------------------------------------------
 .../main/java/brooklyn/util/flags/TypeCoercions.java  |  3 +--
 .../brooklyn/util/internal/TypeCoercionsTest.java     | 14 ++++++++------
 2 files changed, 9 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab9de806/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/util/flags/TypeCoercions.java b/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
index 3036654..e25f1b7 100644
--- a/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
+++ b/core/src/main/java/brooklyn/util/flags/TypeCoercions.java
@@ -325,7 +325,6 @@ public class TypeCoercions {
     @SuppressWarnings("unchecked")
     public static <T> T stringToPrimitive(String value, Class<T> targetType) {
         assert Primitives.allPrimitiveTypes().contains(targetType) || Primitives.allWrapperTypes().contains(targetType) : "targetType="+targetType;
-        value = value.trim();
         // If char, then need to do explicit conversion
         if (targetType == Character.class || targetType == char.class) {
             if (value.length() == 1) {
@@ -334,7 +333,7 @@ public class TypeCoercions {
                 throw new ClassCoercionException("Cannot coerce type String to "+targetType.getCanonicalName()+" ("+value+"): adapting failed");
             }
         }
-
+        value = value.trim();
         // For boolean we could use valueOf, but that returns false whereas we'd rather throw errors on bad values
         if (targetType == Boolean.class || targetType == boolean.class) {
             if ("true".equalsIgnoreCase(value)) return (T) Boolean.TRUE;

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/ab9de806/core/src/test/java/brooklyn/util/internal/TypeCoercionsTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/brooklyn/util/internal/TypeCoercionsTest.java b/core/src/test/java/brooklyn/util/internal/TypeCoercionsTest.java
index e6aee19..05b4c72 100644
--- a/core/src/test/java/brooklyn/util/internal/TypeCoercionsTest.java
+++ b/core/src/test/java/brooklyn/util/internal/TypeCoercionsTest.java
@@ -32,17 +32,17 @@ import org.slf4j.LoggerFactory;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
-import brooklyn.entity.basic.Lifecycle;
-import brooklyn.util.flags.ClassCoercionException;
-import brooklyn.util.flags.TypeCoercions;
-import brooklyn.util.text.StringPredicates;
-
 import com.google.common.base.Predicate;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.reflect.TypeToken;
 
+import brooklyn.entity.basic.Lifecycle;
+import brooklyn.util.flags.ClassCoercionException;
+import brooklyn.util.flags.TypeCoercions;
+import brooklyn.util.text.StringPredicates;
+
 public class TypeCoercionsTest {
 
     private static final Logger log = LoggerFactory.getLogger(TypeCoercionsTest.class);
@@ -56,6 +56,7 @@ public class TypeCoercionsTest {
     @Test
     public void testCoerceStringToPrimitive() {
         assertEquals(TypeCoercions.coerce("1", Character.class), (Character)'1');
+        assertEquals(TypeCoercions.coerce(" ", Character.class), (Character)' ');
         assertEquals(TypeCoercions.coerce("1", Short.class), (Short)((short)1));
         assertEquals(TypeCoercions.coerce("1", Integer.class), (Integer)1);
         assertEquals(TypeCoercions.coerce("1", Long.class), (Long)1l);
@@ -63,7 +64,8 @@ public class TypeCoercionsTest {
         assertEquals(TypeCoercions.coerce("1", Double.class), (Double)1d);
         assertEquals(TypeCoercions.coerce("true", Boolean.class), (Boolean)true);
         assertEquals(TypeCoercions.coerce("False", Boolean.class), (Boolean)false);
-        
+        assertEquals(TypeCoercions.coerce("true ", Boolean.class), (Boolean)true);
+
         assertEquals(TypeCoercions.coerce("1", char.class), (Character)'1');
         assertEquals(TypeCoercions.coerce("1", short.class), (Short)((short)1));
         assertEquals(TypeCoercions.coerce("1", int.class), (Integer)1);


[3/3] git commit: This closes #66

Posted by al...@apache.org.
This closes #66


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/b74e76c3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/b74e76c3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/b74e76c3

Branch: refs/heads/master
Commit: b74e76c35035217d4461f878a2d34315f48f6cc2
Parents: a09ae7d ab9de80
Author: Aled Sage <al...@gmail.com>
Authored: Tue Jul 15 16:19:39 2014 +0100
Committer: Aled Sage <al...@gmail.com>
Committed: Tue Jul 15 16:19:39 2014 +0100

----------------------------------------------------------------------
 .../java/brooklyn/util/flags/TypeCoercions.java | 34 +++++++++-----------
 .../util/internal/TypeCoercionsTest.java        | 14 ++++----
 2 files changed, 24 insertions(+), 24 deletions(-)
----------------------------------------------------------------------