You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ace.apache.org by ma...@apache.org on 2013/10/08 12:57:48 UTC

svn commit: r1530221 - /ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/DefaultController.java

Author: marrs
Date: Tue Oct  8 10:57:47 2013
New Revision: 1530221

URL: http://svn.apache.org/r1530221
Log:
ACE-415 Improved exception handling of individual steps.

Modified:
    ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/DefaultController.java

Modified: ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/DefaultController.java
URL: http://svn.apache.org/viewvc/ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/DefaultController.java?rev=1530221&r1=1530220&r2=1530221&view=diff
==============================================================================
--- ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/DefaultController.java (original)
+++ ace/trunk/org.apache.ace.agent/src/org/apache/ace/agent/impl/DefaultController.java Tue Oct  8 10:57:47 2013
@@ -18,13 +18,13 @@
  */
 package org.apache.ace.agent.impl;
 
-import static org.apache.ace.agent.AgentConstants.EVENT_AGENT_CONFIG_CHANGED;
 import static org.apache.ace.agent.AgentConstants.CONFIG_CONTROLLER_DISABLED;
 import static org.apache.ace.agent.AgentConstants.CONFIG_CONTROLLER_FIXPACKAGES;
 import static org.apache.ace.agent.AgentConstants.CONFIG_CONTROLLER_RETRIES;
 import static org.apache.ace.agent.AgentConstants.CONFIG_CONTROLLER_STREAMING;
 import static org.apache.ace.agent.AgentConstants.CONFIG_CONTROLLER_SYNCDELAY;
 import static org.apache.ace.agent.AgentConstants.CONFIG_CONTROLLER_SYNCINTERVAL;
+import static org.apache.ace.agent.AgentConstants.EVENT_AGENT_CONFIG_CHANGED;
 import static org.apache.ace.agent.impl.ConnectionUtil.closeSilently;
 import static org.apache.ace.agent.impl.InternalConstants.AGENT_INSTALLATION_COMPLETE;
 import static org.apache.ace.agent.impl.InternalConstants.AGENT_INSTALLATION_START;
@@ -484,19 +484,26 @@ public class DefaultController extends C
         boolean disabled = m_disabled.get();
         long interval = m_interval.get();
 
+        if (disabled) {
+        	logDebug("Controller disabled by configuration. Skipping...");
+        	return;
+        }
+        logDebug("Controller syncing...");
         try {
-            if (disabled) {
-                logDebug("Controller disabled by configuration. Skipping...");
-                return;
-            }
-
-            logDebug("Controller syncing...");
-
-            runFeedback();
-            runAgentUpdate();
-            runDeploymentUpdate();
-
-            logDebug("Sync completed. Rescheduled in %d seconds", interval);
+        	runFeedback();
+        	try {
+        		runAgentUpdate();
+        	}
+        	catch (IOException e) {
+                logError("Agent update aborted due to Exception.", e);
+        	}
+        	try {
+        		runDeploymentUpdate();
+        	}
+        	catch (IOException e) {
+                logError("Deployment update aborted due to Exception.", e);
+        	}
+        	logDebug("Sync completed. Rescheduled in %d seconds", interval);
         }
         catch (RetryAfterException e) {
             // any method may throw this causing the sync to abort. The server is busy so no sense in trying
@@ -504,11 +511,6 @@ public class DefaultController extends C
             interval = e.getBackoffTime();
             logWarning("Sync received retry exception from server. Rescheduled in %d seconds", e.getBackoffTime());
         }
-        catch (Exception e) {
-            // serious problem throw by a method that decides this is cause enough to abort the sync. Not much
-            // we can do but log it as an error and reschedule as usual.
-            logError("Sync aborted due to Exception.", e);
-        }
         finally {
             scheduleRun(interval);
         }