Improved printing of arrays in property values when converting a ServiceReference to a String.

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1005419 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/dependencymanager/core/src/main/java/org/apache/felix/dm/ServiceUtil.java b/dependencymanager/core/src/main/java/org/apache/felix/dm/ServiceUtil.java
index 73a0fe1..8ae49de 100644
--- a/dependencymanager/core/src/main/java/org/apache/felix/dm/ServiceUtil.java
+++ b/dependencymanager/core/src/main/java/org/apache/felix/dm/ServiceUtil.java
@@ -103,7 +103,23 @@
                 }
                 buf.append(keys[i]);
                 buf.append('=');
-                buf.append(ref.getProperty(keys[i]));
+                Object val = ref.getProperty(keys[i]);
+                if (val instanceof String[]) {
+                    String[] valArray = (String[]) val;
+                    StringBuffer valBuf = new StringBuffer();
+                    valBuf.append('{');
+                    for (int j = 0; j < valArray.length; j++) {
+                        if (valBuf.length() > 1) {
+                            valBuf.append(',');
+                        }
+                        valBuf.append(valArray[j].toString());
+                    }
+                    valBuf.append('}');
+                    buf.append(valBuf);
+                }
+                else {
+                    buf.append(val.toString());
+                }
             }
             buf.append("}");
             return buf.toString();