You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by oh...@apache.org on 2014/03/01 21:11:09 UTC
svn commit: r1573217 - in
/commons/proper/configuration/branches/immutableNodes/src:
main/java/org/apache/commons/configuration/
main/java/org/apache/commons/configuration/convert/
test/java/org/apache/commons/configuration/convert/
Author: oheger
Date: Sat Mar 1 20:11:09 2014
New Revision: 1573217
URL: http://svn.apache.org/r1573217
Log:
Changed ListDelimiterHandler.parse() to return an Iterable.
Changed return type from Iterator to Iterable. This is more flexible. The
NodeModel interface expects an Iterable to be passed in.
Modified:
commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/AbstractConfiguration.java
commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/DatabaseConfiguration.java
commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/AbstractListDelimiterHandler.java
commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/ListDelimiterHandler.java
commons/proper/configuration/branches/immutableNodes/src/test/java/org/apache/commons/configuration/convert/TestDisabledListDelimiterHandler.java
Modified: commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/AbstractConfiguration.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/AbstractConfiguration.java?rev=1573217&r1=1573216&r2=1573217&view=diff
==============================================================================
--- commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/AbstractConfiguration.java (original)
+++ commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/AbstractConfiguration.java Sat Mar 1 20:11:09 2014
@@ -719,10 +719,9 @@ public abstract class AbstractConfigurat
*/
protected void addPropertyInternal(String key, Object value)
{
- for (Iterator<?> it = getListDelimiterHandler().parse(value); it
- .hasNext();)
+ for (Object obj : getListDelimiterHandler().parse(value))
{
- addPropertyDirect(key, it.next());
+ addPropertyDirect(key, obj);
}
}
Modified: commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/DatabaseConfiguration.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/DatabaseConfiguration.java?rev=1573217&r1=1573216&r2=1573217&view=diff
==============================================================================
--- commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/DatabaseConfiguration.java (original)
+++ commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/DatabaseConfiguration.java Sat Mar 1 20:11:09 2014
@@ -17,6 +17,7 @@
package org.apache.commons.configuration;
+import javax.sql.DataSource;
import java.sql.Clob;
import java.sql.Connection;
import java.sql.PreparedStatement;
@@ -28,8 +29,6 @@ import java.util.Collection;
import java.util.Iterator;
import java.util.List;
-import javax.sql.DataSource;
-
import org.apache.commons.configuration.convert.DisabledListDelimiterHandler;
import org.apache.commons.configuration.convert.ListDelimiterHandler;
import org.apache.commons.lang3.StringUtils;
@@ -329,10 +328,9 @@ public class DatabaseConfiguration exten
{
Object value = extractPropertyValue(rs);
// Split value if it contains the list delimiter
- Iterator<?> it = getListDelimiterHandler().parse(value);
- while (it.hasNext())
+ for (Object o : getListDelimiterHandler().parse(value))
{
- results.add(it.next());
+ results.add(o);
}
}
Modified: commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/AbstractListDelimiterHandler.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/AbstractListDelimiterHandler.java?rev=1573217&r1=1573216&r2=1573217&view=diff
==============================================================================
--- commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/AbstractListDelimiterHandler.java (original)
+++ commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/AbstractListDelimiterHandler.java Sat Mar 1 20:11:09 2014
@@ -58,9 +58,9 @@ public abstract class AbstractListDelimi
* primitive objects.</li>
* </ul>
*/
- public Iterator<?> parse(Object value)
+ public Iterable<?> parse(Object value)
{
- return flatten(value).iterator();
+ return flatten(value);
}
/**
Modified: commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/ListDelimiterHandler.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/ListDelimiterHandler.java?rev=1573217&r1=1573216&r2=1573217&view=diff
==============================================================================
--- commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/ListDelimiterHandler.java (original)
+++ commons/proper/configuration/branches/immutableNodes/src/main/java/org/apache/commons/configuration/convert/ListDelimiterHandler.java Sat Mar 1 20:11:09 2014
@@ -17,7 +17,6 @@
package org.apache.commons.configuration.convert;
import java.util.Collection;
-import java.util.Iterator;
import java.util.List;
/**
@@ -73,13 +72,13 @@ public interface ListDelimiterHandler
* Parses the specified value for list delimiters and splits it if
* necessary. The passed in object can be either a single value or a complex
* one, e.g. a collection, an array, or an {@code Iterable}. It is the
- * responsibility of this method to return an {@code Iterator} which
+ * responsibility of this method to return an {@code Iterable} which
* contains all extracted values.
*
* @param value the value to be parsed
- * @return an {@code Iterator} allowing access to all extracted values
+ * @return an {@code Iterable} allowing access to all extracted values
*/
- Iterator<?> parse(Object value);
+ Iterable<?> parse(Object value);
/**
* Splits the specified string at the list delimiter and returns a
Modified: commons/proper/configuration/branches/immutableNodes/src/test/java/org/apache/commons/configuration/convert/TestDisabledListDelimiterHandler.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/branches/immutableNodes/src/test/java/org/apache/commons/configuration/convert/TestDisabledListDelimiterHandler.java?rev=1573217&r1=1573216&r2=1573217&view=diff
==============================================================================
--- commons/proper/configuration/branches/immutableNodes/src/test/java/org/apache/commons/configuration/convert/TestDisabledListDelimiterHandler.java (original)
+++ commons/proper/configuration/branches/immutableNodes/src/test/java/org/apache/commons/configuration/convert/TestDisabledListDelimiterHandler.java Sat Mar 1 20:11:09 2014
@@ -54,12 +54,13 @@ public class TestDisabledListDelimiterHa
}
/**
- * Checks whether the passed in iterator contains the expected values.
+ * Checks whether the passed in container contains the expected values.
*
- * @param it the iterator to test
+ * @param container the iterator to test
*/
- private static void checkIterator(Iterator<?> it)
+ private static void checkIterator(Iterable<?> container)
{
+ Iterator<?> it = container.iterator();
for (Object o : VALUES)
{
assertEquals("Wrong value", o, it.next());
@@ -100,7 +101,7 @@ public class TestDisabledListDelimiterHa
@Test
public void testParseSimpleValue()
{
- Iterator<?> it = handler.parse(STR_VALUE);
+ Iterator<?> it = handler.parse(STR_VALUE).iterator();
assertEquals("Wrong value", STR_VALUE, it.next());
assertFalse("Too many values", it.hasNext());
}
@@ -111,7 +112,7 @@ public class TestDisabledListDelimiterHa
@Test
public void testParseNull()
{
- assertFalse("Got a value", handler.parse(null).hasNext());
+ assertFalse("Got a value", handler.parse(null).iterator().hasNext());
}
/**