Author: oheger
Date: Wed Feb 25 21:12:31 2009
New Revision: 747926
URL: http://svn.apache.org/viewvc?rev=747926&view=rev
Log:
ConfigurationSource now supports an ExpressionEngine.
Modified:
commons/proper/configuration/branches/configuration2_experimental/src/main/java/org/apache/commons/configuration2/base/ConfigurationSource.java
Modified:
commons/proper/configuration/branches/configuration2_experimental/src/main/java/org/apache/commons/configuration2/base/ConfigurationSource.java
URL:
http://svn.apache.org/viewvc/commons/proper/configuration/branches/configuration2_experimental/src/main/java/org/apache/commons/configuration2/base/ConfigurationSource.java?rev=747926&r1=747925&r2=747926&view=diff
==============================================================================
---
commons/proper/configuration/branches/configuration2_experimental/src/main/java/org/apache/commons/configuration2/base/ConfigurationSource.java
(original)
+++
commons/proper/configuration/branches/configuration2_experimental/src/main/java/org/apache/commons/configuration2/base/ConfigurationSource.java
Wed Feb 25 21:12:31 2009
@@ -18,6 +18,8 @@
import java.util.Iterator;
+import org.apache.commons.configuration2.expr.ExpressionEngine;
+
/**
* <p>
* An interface defining a source for configuration settings.
@@ -209,4 +211,26 @@
* @see #getProperty(String)
*/
int valueCount(String key);
+
+ /**
+ * Returns the {...@code ExpressionEngine} used by this {...@code
+ * ConfigurationSource}.
+ *
+ * @return the {...@code ExpressionEngine}
+ */
+ ExpressionEngine getExpressionEngine();
+
+ /**
+ * Sets the {...@code ExpressionEngine} to be used by this {...@code
+ * ConfigurationSource}. This {...@code ExpressionEngine} should be used
for
+ * interpreting configuration keys passed to the methods of this interface.
+ * If an implementation does not support an {...@code ExpressionEngine}
(e.g.
+ * non-hierarchical implementations), it should at least store the
reference
+ * passed to this method so that it can be returned by
+ * {...@link #getExpressionEngine()}.
+ *
+ * @param engine the {...@code ExpressionEngine} to be used for
interpreting
+ * property keys
+ */
+ void setExpressionEngine(ExpressionEngine engine);
}