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 2016/02/14 20:03:20 UTC
svn commit: r1730380 - in /commons/proper/configuration/trunk/src:
main/java/org/apache/commons/configuration2/builder/HierarchicalBuilderParametersImpl.java
test/java/org/apache/commons/configuration2/builder/TestHierarchicalBuilderParametersImpl.java
Author: oheger
Date: Sun Feb 14 19:03:20 2016
New Revision: 1730380
URL: http://svn.apache.org/viewvc?rev=1730380&view=rev
Log:
[CONFIGURATION-619] Implemented inheritFrom() in HierarchicalBuilderParametersImpl.
Here some more properties are taken into account.
Modified:
commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration2/builder/HierarchicalBuilderParametersImpl.java
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration2/builder/TestHierarchicalBuilderParametersImpl.java
Modified: commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration2/builder/HierarchicalBuilderParametersImpl.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration2/builder/HierarchicalBuilderParametersImpl.java?rev=1730380&r1=1730379&r2=1730380&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration2/builder/HierarchicalBuilderParametersImpl.java (original)
+++ commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration2/builder/HierarchicalBuilderParametersImpl.java Sun Feb 14 19:03:20 2016
@@ -16,6 +16,8 @@
*/
package org.apache.commons.configuration2.builder;
+import java.util.Map;
+
import org.apache.commons.configuration2.tree.ExpressionEngine;
/**
@@ -39,6 +41,17 @@ public class HierarchicalBuilderParamete
private static final String PROP_EXPRESSION_ENGINE = "expressionEngine";
/**
+ * {@inheritDoc} This implementation copies some more properties defined by
+ * this class.
+ */
+ @Override
+ public void inheritFrom(Map<String, ?> source)
+ {
+ super.inheritFrom(source);
+ copyPropertiesFrom(source, PROP_EXPRESSION_ENGINE);
+ }
+
+ /**
* {@inheritDoc} This implementation stores the expression engine in the
* internal parameters map.
*/
Modified: commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration2/builder/TestHierarchicalBuilderParametersImpl.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration2/builder/TestHierarchicalBuilderParametersImpl.java?rev=1730380&r1=1730379&r2=1730380&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration2/builder/TestHierarchicalBuilderParametersImpl.java (original)
+++ commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration2/builder/TestHierarchicalBuilderParametersImpl.java Sun Feb 14 19:03:20 2016
@@ -72,4 +72,26 @@ public class TestHierarchicalBuilderPara
assertEquals("Wrong exception flag", Boolean.TRUE,
map.get("throwExceptionOnMissing"));
}
+
+ /**
+ * Tests whether inheritFrom() copies additional properties.
+ */
+ @Test
+ public void testInheritFrom()
+ {
+ ExpressionEngine engine = EasyMock.createMock(ExpressionEngine.class);
+ HierarchicalBuilderParametersImpl params =
+ new HierarchicalBuilderParametersImpl();
+ params.setExpressionEngine(engine);
+ params.setThrowExceptionOnMissing(true);
+ HierarchicalBuilderParametersImpl params2 =
+ new HierarchicalBuilderParametersImpl();
+
+ params2.inheritFrom(params.getParameters());
+ Map<String, Object> parameters = params2.getParameters();
+ assertEquals("Exception flag not set", Boolean.TRUE,
+ parameters.get("throwExceptionOnMissing"));
+ assertEquals("Expression engine not set", engine,
+ parameters.get("expressionEngine"));
+ }
}