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/01/20 18:05:20 UTC

svn commit: r1435888 - in /commons/proper/configuration/trunk/src: main/java/org/apache/commons/configuration/reloading/ReloadingController.java test/java/org/apache/commons/configuration/reloading/TestReloadingController.java

Author: oheger
Date: Sun Jan 20 17:05:20 2013
New Revision: 1435888

URL: http://svn.apache.org/viewvc?rev=1435888&view=rev
Log:
ReloadingController.checkForReloading() now always returns true if in reloading state.

Modified:
    commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/reloading/ReloadingController.java
    commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/reloading/TestReloadingController.java

Modified: commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/reloading/ReloadingController.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/reloading/ReloadingController.java?rev=1435888&r1=1435887&r2=1435888&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/reloading/ReloadingController.java (original)
+++ commons/proper/configuration/trunk/src/main/java/org/apache/commons/configuration/reloading/ReloadingController.java Sun Jan 20 17:05:20 2013
@@ -143,22 +143,28 @@ public class ReloadingController
      * if necessary. The argument can be an arbitrary data object; it will be
      * part of the event notification sent out when a reload operation should be
      * performed. The return value indicates whether a change was detected and
-     * an event was sent.
+     * an event was sent. Once a need for a reload is detected, this controller
+     * is in <em>reloading state</em>. Until this state is reset (by calling
+     * {@link #resetReloadingState()}), no further reloading checks are
+     * performed by this method, and no events are fired; it then returns always
+     * <b>true</b>.
      *
      * @param data additional data for an event notification
+     * @return a flag whether a reload operation is necessary
      */
     public boolean checkForReloading(Object data)
     {
         boolean sendEvent = false;
         synchronized (this)
         {
-            if (!isInReloadingState())
+            if (isInReloadingState())
             {
-                if (getDetector().isReloadingRequired())
-                {
-                    sendEvent = true;
-                    reloadingState = true;
-                }
+                return true;
+            }
+            if (getDetector().isReloadingRequired())
+            {
+                sendEvent = true;
+                reloadingState = true;
             }
         }
 

Modified: commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/reloading/TestReloadingController.java
URL: http://svn.apache.org/viewvc/commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/reloading/TestReloadingController.java?rev=1435888&r1=1435887&r2=1435888&view=diff
==============================================================================
--- commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/reloading/TestReloadingController.java (original)
+++ commons/proper/configuration/trunk/src/test/java/org/apache/commons/configuration/reloading/TestReloadingController.java Sun Jan 20 17:05:20 2013
@@ -151,7 +151,7 @@ public class TestReloadingController
         ReloadingController ctrl = createController();
         ctrl.addReloadingListener(l);
         assertTrue("Wrong result (1)", ctrl.checkForReloading(1));
-        assertFalse("Wrong result (2)", ctrl.checkForReloading(2));
+        assertTrue("Wrong result (2)", ctrl.checkForReloading(2));
         EasyMock.verify(detector, l);
     }