FELIX-2094 Ensure empty default value attribute in <AD> element gives String[]{ "" }.
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@911304 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/metatype/src/main/java/org/apache/felix/metatype/AD.java b/metatype/src/main/java/org/apache/felix/metatype/AD.java
index 05fe4e3..f141edc 100644
--- a/metatype/src/main/java/org/apache/felix/metatype/AD.java
+++ b/metatype/src/main/java/org/apache/felix/metatype/AD.java
@@ -372,11 +372,16 @@
public static String[] splitList( String listString )
{
- // return nothing ...
+ // check for non-existing or empty lists
if ( listString == null )
{
return null;
}
+ else if ( listString.length() == 0 )
+ {
+ return new String[]
+ { "" };
+ }
List values = new ArrayList();
boolean escape = false;
diff --git a/metatype/src/test/java/org/apache/felix/metatype/ADTest.java b/metatype/src/test/java/org/apache/felix/metatype/ADTest.java
index 7029cc5..77bfcfd 100644
--- a/metatype/src/test/java/org/apache/felix/metatype/ADTest.java
+++ b/metatype/src/test/java/org/apache/felix/metatype/ADTest.java
@@ -1,4 +1,4 @@
-/*
+/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -27,7 +27,7 @@
/**
* The <code>ADTest</code> class tests the static helper methods of the
* {@link AD} class.
- *
+ *
* @author <a href="mailto:dev@felix.apache.org">Felix Project Team</a>
*/
public class ADTest extends TestCase
@@ -48,7 +48,9 @@
{
String listString = "";
String[] list = AD.splitList( listString );
- assertNull( list );
+ assertNotNull( list );
+ assertEquals( 1, list.length );
+ assertEquals( listString, list[0] );
}