You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by sv...@apache.org on 2016/10/31 12:24:28 UTC

[4/5] brooklyn-server git commit: address Identifiers comment

address Identifiers comment


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

Branch: refs/heads/master
Commit: 72ce9816ebe36fc39571b3de6647320251410bb1
Parents: c8eb0de
Author: Alex Heneveld <al...@cloudsoftcorp.com>
Authored: Wed Oct 19 11:18:35 2016 -0400
Committer: Alex Heneveld <al...@cloudsoftcorp.com>
Committed: Wed Oct 19 11:18:35 2016 -0400

----------------------------------------------------------------------
 .../org/apache/brooklyn/util/text/Identifiers.java    | 14 ++++++++------
 .../apache/brooklyn/util/text/IdentifiersTest.java    |  3 ++-
 2 files changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/72ce9816/utils/common/src/main/java/org/apache/brooklyn/util/text/Identifiers.java
----------------------------------------------------------------------
diff --git a/utils/common/src/main/java/org/apache/brooklyn/util/text/Identifiers.java b/utils/common/src/main/java/org/apache/brooklyn/util/text/Identifiers.java
index 97eb024..56af6cf 100644
--- a/utils/common/src/main/java/org/apache/brooklyn/util/text/Identifiers.java
+++ b/utils/common/src/main/java/org/apache/brooklyn/util/text/Identifiers.java
@@ -21,13 +21,15 @@ package org.apache.brooklyn.util.text;
 import java.security.SecureRandom;
 import java.util.Arrays;
 import java.util.Collections;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Random;
 import java.util.Set;
 
+import org.apache.brooklyn.util.collections.MutableSet;
+
 import com.google.common.base.Joiner;
 import com.google.common.base.Preconditions;
+import com.google.common.primitives.Chars;
 
 public class Identifiers {
     
@@ -168,15 +170,15 @@ public class Identifiers {
         return Joiner.on("").join(list);
     }
 
-    @SuppressWarnings({ "rawtypes", "unchecked" })  
     protected static String mergeCharacterSets(String... s) {
-        Set characters = new HashSet<Character>();
+        Set<Character> characters = MutableSet.of();
         for (String characterSet : s) {
-            // more efficient to lose the generics here
-            characters.addAll(Arrays.asList(characterSet.split("")));
+            for (char c: characterSet.toCharArray()) {
+                characters.add(c);
+            }
         }
 
-        return Joiner.on("").join(characters);
+        return new String(Chars.toArray(characters));
     }
 
     /** creates a short identifier comfortable in java and OS's, given an input hash code

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/72ce9816/utils/common/src/test/java/org/apache/brooklyn/util/text/IdentifiersTest.java
----------------------------------------------------------------------
diff --git a/utils/common/src/test/java/org/apache/brooklyn/util/text/IdentifiersTest.java b/utils/common/src/test/java/org/apache/brooklyn/util/text/IdentifiersTest.java
index e21bb81..4b9c041 100644
--- a/utils/common/src/test/java/org/apache/brooklyn/util/text/IdentifiersTest.java
+++ b/utils/common/src/test/java/org/apache/brooklyn/util/text/IdentifiersTest.java
@@ -113,6 +113,7 @@ public class IdentifiersTest {
     public void testCharMerge() {
         String characters = Identifiers.mergeCharacterSets("abc", "bcd", "ghjj");
         Assert.assertEquals(characters.indexOf('b'), characters.lastIndexOf('b'));
+        Assert.assertEquals(characters, "abcdghj");
     }
-    
+
 }