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 2013/07/13 21:33:20 UTC
svn commit: r1502854 - in /commons/proper/configuration/trunk/src:
main/java/org/apache/commons/configuration/SubnodeConfiguration.java
test/java/org/apache/commons/configuration/TestSubnodeConfiguration.java
Author: oheger
Date: Sat Jul 13 19:33:20 2013
New Revision: 1502854
URL: http://svn.apache.org/r1502854
Log:
Changed list delimiter handling in SubnodeConfiguration.
Now the listDelimiterHandler property is used rather than listDelimiter, and
listDelimiterParsingDisabled.
Modified:
commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/SubnodeConfiguration.java
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestSubnodeConfiguration.java
Modified: commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/SubnodeConfiguration.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/SubnodeConfiguration.java?rev=1502854&r1=1502853&r2=1502854&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/SubnodeConfiguration.java (original)
+++ commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/SubnodeConfiguration.java Sat Jul 13 19:33:20 2013
@@ -297,8 +297,7 @@ public class SubnodeConfiguration extend
protected void initFromParent(BaseHierarchicalConfiguration parentConfig)
{
setExpressionEngine(parentConfig.getExpressionEngine());
- setListDelimiter(parentConfig.getListDelimiter());
- setDelimiterParsingDisabled(parentConfig.isDelimiterParsingDisabled());
+ setListDelimiterHandler(parentConfig.getListDelimiterHandler());
setThrowExceptionOnMissing(parentConfig.isThrowExceptionOnMissing());
}
Modified: commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestSubnodeConfiguration.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestSubnodeConfiguration.java?rev=1502854&r1=1502853&r2=1502854&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestSubnodeConfiguration.java (original)
+++ commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestSubnodeConfiguration.java Sat Jul 13 19:33:20 2013
@@ -35,7 +35,6 @@ import org.apache.commons.configuration.
import org.apache.commons.configuration.tree.ConfigurationNode;
import org.apache.commons.configuration.tree.xpath.XPathExpressionEngine;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
/**
@@ -213,45 +212,25 @@ public class TestSubnodeConfiguration
}
/**
- * Tests handling of the delimiter parsing disabled flag. This is shared
- * with the parent, too.
+ * Tests manipulating the list delimiter handler. This object is derived
+ * from the parent.
*/
@Test
- public void testSetDelimiterParsingDisabled()
+ public void testSetListDelimiterHandler()
{
- parent.setDelimiterParsingDisabled(true);
+ ListDelimiterHandler handler1 = new DefaultListDelimiterHandler('/');
+ ListDelimiterHandler handler2 = new DefaultListDelimiterHandler(';');
+ parent.setListDelimiterHandler(handler1);
setUpSubnodeConfig();
- parent.setDelimiterParsingDisabled(false);
- assertTrue("Delimiter parsing flag was not received from parent",
- config.isDelimiterParsingDisabled());
- config.addProperty("newProp", "test1,test2,test3");
- assertEquals("New property was splitted", "test1,test2,test3", parent
- .getString("tables.table(0).newProp"));
- parent.setDelimiterParsingDisabled(true);
- config.setDelimiterParsingDisabled(false);
- assertTrue("Delimiter parsing flag was reset on parent", parent
- .isDelimiterParsingDisabled());
- }
-
- /**
- * Tests manipulating the list delimiter. This piece of data is derived from
- * the parent.
- */
- @Ignore //TODO enable again when delimiter handling has been reworked
- @Test
- public void testSetListDelimiter()
- {
- parent.setListDelimiter('/');
- setUpSubnodeConfig();
- parent.setListDelimiter(';');
- assertEquals("List delimiter not obtained from parent", '/', config
- .getListDelimiter());
+ parent.setListDelimiterHandler(handler2);
+ assertEquals("List delimiter handler not obtained from parent",
+ handler1, config.getListDelimiterHandler());
config.addProperty("newProp", "test1,test2/test3");
- assertEquals("List was incorrectly splitted", "test1,test2", parent
- .getString("tables.table(0).newProp"));
- config.setListDelimiter(',');
- assertEquals("List delimiter changed on parent", ';', parent
- .getListDelimiter());
+ assertEquals("List was incorrectly splitted", "test1,test2",
+ parent.getString("tables.table(0).newProp"));
+ config.setListDelimiterHandler(DisabledListDelimiterHandler.INSTANCE);
+ assertEquals("List delimiter changed on parent", handler2,
+ parent.getListDelimiterHandler());
}
/**