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/05/22 22:09:44 UTC

svn commit: r1485387 - in /commons/proper/configuration/trunk/src: main/java/org/apache/commons/configuration/ main/java/org/apache/commons/configuration/builder/combined/ test/java/org/apache/commons/configuration/ test/java/org/apache/commons/configu...

Author: oheger
Date: Wed May 22 20:09:44 2013
New Revision: 1485387

URL: http://svn.apache.org/r1485387
Log:
Removed some stuff related to the old reloading mechanism.

CombinedConfiguration used to support a flag for triggering reloads on child
configurations. If set, on each property access all child configurations are
queried to initiate a reload if necessary. Reloading is now handled in a
different way; therefore, this mechanism could be removed.

Modified:
    commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/CombinedConfiguration.java
    commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/DynamicCombinedConfiguration.java
    commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/builder/combined/CombinedConfigurationBuilder.java
    commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestCombinedConfiguration.java
    commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/builder/combined/TestCombinedConfigurationBuilder.java
    commons/proper/configuration/trunk/src/test/resources/testCCResultInitialization.xml
    commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder4.xml
    commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder5.xml

Modified: commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/CombinedConfiguration.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/CombinedConfiguration.java?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/CombinedConfiguration.java (original)
+++ commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/CombinedConfiguration.java Wed May 22 20:09:44 2013
@@ -170,7 +170,7 @@ import org.apache.commons.configuration.
  * @since 1.3
  * @version $Id$
  */
-public class CombinedConfiguration extends HierarchicalReloadableConfiguration implements
+public class CombinedConfiguration extends BaseHierarchicalConfiguration implements
         ConfigurationListener, Cloneable
 {
     /**
@@ -190,9 +190,6 @@ public class CombinedConfiguration exten
     /** Constant for the default node combiner. */
     private static final NodeCombiner DEFAULT_COMBINER = new UnionCombiner();
 
-    /** Constant for the name of the property used for the reload check.*/
-    private static final String PROP_RELOAD_CHECK = "CombinedConfigurationReloadCheck";
-
     /** Stores the combiner. */
     private NodeCombiner nodeCombiner;
 
@@ -205,9 +202,6 @@ public class CombinedConfiguration exten
     /** Stores a map with the named configurations. */
     private Map<String, Configuration> namedConfigurations;
 
-    /** The default behavior is to ignore exceptions that occur during reload */
-    private boolean ignoreReloadExceptions = true;
-
     /** Set to true when the backing file has changed */
     private boolean reloadRequired;
 
@@ -217,9 +211,6 @@ public class CombinedConfiguration exten
      */
     private ExpressionEngine conversionExpressionEngine;
 
-    /** A flag whether an enhanced reload check is to be performed.*/
-    private boolean forceReloadCheck;
-
     /**
      * Creates a new instance of {@code CombinedConfiguration} and
      * initializes the combiner to be used.
@@ -233,18 +224,6 @@ public class CombinedConfiguration exten
         clear();
     }
 
-    public CombinedConfiguration(NodeCombiner comb, Lock lock)
-    {
-        super(lock);
-        setNodeCombiner((comb != null) ? comb : DEFAULT_COMBINER);
-        clear();
-    }
-
-    public CombinedConfiguration(Lock lock)
-    {
-        this(null, lock);
-    }
-
     /**
      * Creates a new instance of {@code CombinedConfiguration} that uses
      * a union combiner.
@@ -253,7 +232,7 @@ public class CombinedConfiguration exten
      */
     public CombinedConfiguration()
     {
-        this(null, null);
+        this(null);
     }
 
     /**
@@ -288,34 +267,6 @@ public class CombinedConfiguration exten
     }
 
     /**
-     * Returns a flag whether an enhanced reload check must be performed.
-     *
-     * @return the force reload check flag
-     * @since 1.4
-     */
-    public boolean isForceReloadCheck()
-    {
-        return forceReloadCheck;
-    }
-
-    /**
-     * Sets the force reload check flag. If this flag is set, each property
-     * access on this configuration will cause a reload check on the contained
-     * configurations. This is a workaround for a problem with some reload
-     * implementations that only check if a reload is required when they are
-     * triggered. Per default this mode is disabled. If the force reload check
-     * flag is set to <b>true</b>, accessing properties will be less
-     * efficient, but reloads on contained configurations will be detected.
-     *
-     * @param forceReloadCheck the value of the flag
-     * @since 1.4
-     */
-    public void setForceReloadCheck(boolean forceReloadCheck)
-    {
-        this.forceReloadCheck = forceReloadCheck;
-    }
-
-    /**
      * Returns the {@code ExpressionEngine} for converting flat child
      * configurations to hierarchical ones.
      *
@@ -349,26 +300,6 @@ public class CombinedConfiguration exten
     }
 
     /**
-     * Retrieves the value of the ignoreReloadExceptions flag.
-     * @return true if exceptions are ignored, false otherwise.
-     */
-    public boolean isIgnoreReloadExceptions()
-    {
-        return ignoreReloadExceptions;
-    }
-
-    /**
-     * If set to true then exceptions that occur during reloading will be
-     * ignored. If false then the exceptions will be allowed to be thrown
-     * back to the caller.
-     * @param ignoreReloadExceptions true if exceptions should be ignored.
-     */
-    public void setIgnoreReloadExceptions(boolean ignoreReloadExceptions)
-    {
-        this.ignoreReloadExceptions = ignoreReloadExceptions;
-    }
-
-    /**
      * Adds a new configuration to this combined configuration. It is possible
      * (but not mandatory) to give the new configuration a name. This name must
      * be unique, otherwise a {@code ConfigurationRuntimeException} will
@@ -715,55 +646,6 @@ public class CombinedConfiguration exten
     }
 
     /**
-     * Evaluates the passed in property key and returns a list with the matching
-     * configuration nodes. This implementation also evaluates the
-     * <em>force reload check</em> flag. If it is set,
-     * {@code performReloadCheck()} is invoked.
-     *
-     * @param key the property key
-     * @return a list with the matching configuration nodes
-     */
-    @Override
-    protected List<ConfigurationNode> fetchNodeList(String key)
-    {
-        if (isForceReloadCheck())
-        {
-            performReloadCheck();
-        }
-
-        return super.fetchNodeList(key);
-    }
-
-    /**
-     * Triggers the contained configurations to perform a reload check if
-     * necessary. This method is called when a property of this combined
-     * configuration is accessed and the {@code forceReloadCheck} property
-     * is set to <b>true</b>.
-     *
-     * @see #setForceReloadCheck(boolean)
-     * @since 1.6
-     */
-    protected void performReloadCheck()
-    {
-        for (ConfigData cd : configurations)
-        {
-            try
-            {
-                // simply retrieve a property; this is enough for
-                // triggering a reload
-                cd.getConfiguration().getProperty(PROP_RELOAD_CHECK);
-            }
-            catch (Exception ex)
-            {
-                if (!ignoreReloadExceptions)
-                {
-                    throw new ConfigurationRuntimeException(ex);
-                }
-            }
-        }
-    }
-
-    /**
      * Creates the root node of this combined configuration.
      *
      * @return the combined root node

Modified: commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/DynamicCombinedConfiguration.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/DynamicCombinedConfiguration.java?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/DynamicCombinedConfiguration.java (original)
+++ commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/DynamicCombinedConfiguration.java Wed May 22 20:09:44 2013
@@ -98,7 +98,6 @@ public class DynamicCombinedConfiguratio
     {
         super();
         setNodeCombiner(comb);
-        setIgnoreReloadExceptions(false);
         setLogger(LogFactory.getLog(DynamicCombinedConfiguration.class));
         localSubst = initLocalInterpolator();
     }
@@ -112,7 +111,6 @@ public class DynamicCombinedConfiguratio
     public DynamicCombinedConfiguration()
     {
         super();
-        setIgnoreReloadExceptions(false);
         setLogger(LogFactory.getLog(DynamicCombinedConfiguration.class));
         localSubst = initLocalInterpolator();
     }
@@ -828,7 +826,6 @@ public class DynamicCombinedConfiguratio
                             config.setLogger(log);
                         }
                     }
-                    config.setIgnoreReloadExceptions(isIgnoreReloadExceptions());
                     config.setExpressionEngine(this.getExpressionEngine());
                     config.setDelimiterParsingDisabled(isDelimiterParsingDisabled());
                     config.setConversionExpressionEngine(getConversionExpressionEngine());
@@ -841,7 +838,6 @@ public class DynamicCombinedConfiguratio
                     {
                         config.addConfigurationListener(listener);
                     }
-                    config.setForceReloadCheck(isForceReloadCheck());
                     for (ConfigData data : configurations)
                     {
                         config.addConfiguration(data.getConfiguration(), data.getName(), data.getAt());

Modified: commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/builder/combined/CombinedConfigurationBuilder.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/builder/combined/CombinedConfigurationBuilder.java?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/builder/combined/CombinedConfigurationBuilder.java (original)
+++ commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/builder/combined/CombinedConfigurationBuilder.java Wed May 22 20:09:44 2013
@@ -834,9 +834,6 @@ public class CombinedConfigurationBuilde
                 new CombinedConfiguration(new UnionCombiner());
         addConfig.setDelimiterParsingDisabled(resultConfig
                 .isDelimiterParsingDisabled());
-        addConfig.setForceReloadCheck(resultConfig.isForceReloadCheck());
-        addConfig.setIgnoreReloadExceptions(resultConfig
-                .isIgnoreReloadExceptions());
         return addConfig;
     }
 

Modified: commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestCombinedConfiguration.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestCombinedConfiguration.java?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestCombinedConfiguration.java (original)
+++ commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/TestCombinedConfiguration.java Wed May 22 20:09:44 2013
@@ -94,7 +94,6 @@ public class TestCombinedConfiguration
         assertTrue("Wrong node combiner",
                 config.getNodeCombiner() instanceof UnionCombiner);
         assertNull("Test config was found", config.getConfiguration(TEST_NAME));
-        assertFalse("Force reload check flag is set", config.isForceReloadCheck());
     }
 
     /**

Modified: commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/builder/combined/TestCombinedConfigurationBuilder.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/builder/combined/TestCombinedConfigurationBuilder.java?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/builder/combined/TestCombinedConfigurationBuilder.java (original)
+++ commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/builder/combined/TestCombinedConfigurationBuilder.java Wed May 22 20:09:44 2013
@@ -522,8 +522,6 @@ public class TestCombinedConfigurationBu
     {
         assertTrue("Wrong delimiter parsing flag",
                 cc.isDelimiterParsingDisabled());
-        assertTrue("Wrong reload check", cc.isForceReloadCheck());
-        assertTrue("Wrong ignore reload ex flag", cc.isIgnoreReloadExceptions());
     }
 
     /**

Modified: commons/proper/configuration/trunk/src/test/resources/testCCResultInitialization.xml
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/resources/testCCResultInitialization.xml?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/resources/testCCResultInitialization.xml (original)
+++ commons/proper/configuration/trunk/src/test/resources/testCCResultInitialization.xml Wed May 22 20:09:44 2013
@@ -20,8 +20,7 @@
 -->
 <configuration>
   <header>
-    <result delimiterParsingDisabled="true" forceReloadCheck="true"
-      ignoreReloadExceptions="true">
+    <result delimiterParsingDisabled="true">
       <nodeCombiner config-class="org.apache.commons.configuration.tree.OverrideCombiner"/>
       <expressionEngine config-class="org.apache.commons.configuration.tree.xpath.XPathExpressionEngine"/>
     </result>

Modified: commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder4.xml
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder4.xml?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder4.xml (original)
+++ commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder4.xml Wed May 22 20:09:44 2013
@@ -20,7 +20,7 @@
 -->
 <configuration>
   <header>
-    <result delimiterParsingDisabled="true" forceReloadCheck="true" loggerName="TestLogger"
+    <result delimiterParsingDisabled="true" loggerName="TestLogger"
             config-class="org.apache.commons.configuration.DynamicCombinedConfiguration"
             keyPattern="$${test:Id}">
       <nodeCombiner config-class="org.apache.commons.configuration.tree.MergeCombiner"/>

Modified: commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder5.xml
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder5.xml?rev=1485387&r1=1485386&r2=1485387&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder5.xml (original)
+++ commons/proper/configuration/trunk/src/test/resources/testMultiTenentConfigurationBuilder5.xml Wed May 22 20:09:44 2013
@@ -22,7 +22,7 @@
 -->
 <configuration>
   <header>
-    <result delimiterParsingDisabled="true" forceReloadCheck="true" loggerName="TestLogger"
+    <result delimiterParsingDisabled="true" loggerName="TestLogger"
             config-class="org.apache.commons.configuration.DynamicCombinedConfiguration"
             keyPattern="$${sys:Id}">
       <nodeCombiner config-class="org.apache.commons.configuration.tree.MergeCombiner"/>