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(). */


Reply via email to