Author: oheger
Date: Sun Jan 15 20:48:56 2012
New Revision: 1231749
URL: http://svn.apache.org/viewvc?rev=1231749&view=rev
Log:
[CONFIGURATION-475] Deprecated ConfigurationKey.
Modified:
commons/proper/configuration/trunk/src/changes/changes.xml
commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/ConfigurationKey.java
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestConfigurationKey.java
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestHierarchicalConfiguration.java
Modified: commons/proper/configuration/trunk/src/changes/changes.xml
URL:
http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/changes/changes.xml?rev=1231749&r1=1231748&r2=1231749&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/changes/changes.xml (original)
+++ commons/proper/configuration/trunk/src/changes/changes.xml Sun Jan 15
20:48:56 2012
@@ -27,6 +27,9 @@
<body>
<release version="1.8" date="in SVN"
description="TBD">
+ <action dev="oheger" type="update" issue="CONFIGURATION-475">
+ Class ConfigurationKey was deprecated in favour of
DefaultConfigurationKey.
+ </action>
<action dev="oheger" type="update" issue="CONFIGURATION-470">
Classes generated by JavaCC are now created dynamically during the
build process.
Modified:
commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/ConfigurationKey.java
URL:
http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/ConfigurationKey.java?rev=1231749&r1=1231748&r2=1231749&view=diff
==============================================================================
---
commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/ConfigurationKey.java
(original)
+++
commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/ConfigurationKey.java
Sun Jan 15 20:48:56 2012
@@ -39,7 +39,11 @@ import java.util.NoSuchElementException;
* href="http://commons.apache.org/configuration/team-list.html">Commons
* Configuration team</a>
* @version $Id$
+ * @deprecated Use {@link
org.apache.commons.configuration.tree.DefaultConfigurationKey}
+ * instead. It is associated with a {@code DefaultExpressionEngine} and thus
+ * can produce correct keys even if key separators have been changed.
*/
+@Deprecated
public class ConfigurationKey implements Serializable
{
/** Constant for a property delimiter.*/
Modified:
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestConfigurationKey.java
URL:
http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestConfigurationKey.java?rev=1231749&r1=1231748&r2=1231749&view=diff
==============================================================================
---
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestConfigurationKey.java
(original)
+++
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestConfigurationKey.java
Sun Jan 15 20:48:56 2012
@@ -31,6 +31,7 @@ import org.junit.Test;
*
* @version $Id$
*/
+@SuppressWarnings("deprecation")
public class TestConfigurationKey
{
private static final String TESTPROPS = "tables.table(0).fields.field(1)";
Modified:
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestHierarchicalConfiguration.java
URL:
http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestHierarchicalConfiguration.java?rev=1231749&r1=1231748&r2=1231749&view=diff
==============================================================================
---
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestHierarchicalConfiguration.java
(original)
+++
commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestHierarchicalConfiguration.java
Sun Jan 15 20:48:56 2012
@@ -38,6 +38,7 @@ import org.apache.commons.configuration.
import org.apache.commons.configuration.event.ConfigurationEvent;
import org.apache.commons.configuration.event.ConfigurationListener;
import org.apache.commons.configuration.tree.ConfigurationNode;
+import org.apache.commons.configuration.tree.DefaultConfigurationKey;
import org.apache.commons.configuration.tree.DefaultConfigurationNode;
import org.apache.commons.configuration.tree.DefaultExpressionEngine;
import org.apache.commons.configuration.tree.ExpressionEngine;
@@ -444,13 +445,23 @@ public class TestHierarchicalConfigurati
config.addProperty("connection.passwd", "tiger");
assertEquals("tiger", config.getProperty("connection.passwd"));
- ConfigurationKey key = new ConfigurationKey();
+ DefaultConfigurationKey key = createConfigurationKey();
key.append("tables").append("table").appendIndex(0);
key.appendAttribute("tableType");
config.addProperty(key.toString(), "system");
assertEquals("system", config.getProperty(key.toString()));
}
+ /**
+ * Creates a {@code DefaultConfigurationKey} object.
+ *
+ * @return the new key object
+ */
+ private static DefaultConfigurationKey createConfigurationKey()
+ {
+ return new DefaultConfigurationKey(new DefaultExpressionEngine());
+ }
+
@Test(expected = IllegalArgumentException.class)
public void testAddPropertyInvalidKey()
{
@@ -471,7 +482,9 @@ public class TestHierarchicalConfigurati
int maxIdx = config.getMaxIndex("tables.table(0).fields.field.name");
for(int i = 0; i <= maxIdx; i++)
{
- ConfigurationKey key = new
ConfigurationKey("tables.table(0).fields");
+ DefaultConfigurationKey key =
+ new DefaultConfigurationKey(new DefaultExpressionEngine(),
+ "tables.table(0).fields");
key.append("field").appendIndex(i).append("name");
assertNotNull(config.getProperty(key.toString()));
}
@@ -491,7 +504,7 @@ public class TestHierarchicalConfigurati
for (int i = 0; i < fields[0].length; i++)
{
- ConfigurationKey key = new ConfigurationKey();
+ DefaultConfigurationKey key = createConfigurationKey();
key.append("fields").append("field").appendIndex(i);
key.append("name");
assertEquals(fields[0][i], subset.getProperty(key.toString()));
@@ -809,6 +822,7 @@ public class TestHierarchicalConfigurati
public void testNodeVisitorKeys()
{
CountVisitor v = new CountVisitor();
+ @SuppressWarnings("deprecation")
ConfigurationKey configKey = new ConfigurationKey();
config.getRoot().visit(v, configKey);
for (Iterator<String> it = config.getKeys(); it.hasNext();)
@@ -1198,6 +1212,7 @@ public class TestHierarchicalConfigurati
* A test visitor implementation for checking whether all visitor methods
* are correctly called.
*/
+ @SuppressWarnings("deprecation")
static class CountVisitor extends HierarchicalConfiguration.NodeVisitor
{
/** The number of invocations of visitBeforeChildren(). */