Author: cwiklik
Date: Fri Aug 12 16:34:23 2016
New Revision: 1756190

URL: http://svn.apache.org/viewvc?rev=1756190&view=rev
Log:
UIMA-5048 Updated code to deal with missing command line

Modified:
    
uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/event/AgentEventListener.java

Modified: 
uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/event/AgentEventListener.java
URL: 
http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/event/AgentEventListener.java?rev=1756190&r1=1756189&r2=1756190&view=diff
==============================================================================
--- 
uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/event/AgentEventListener.java
 (original)
+++ 
uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/event/AgentEventListener.java
 Fri Aug 12 16:34:23 2016
@@ -40,6 +40,7 @@ import org.apache.uima.ducc.transport.ev
 import org.apache.uima.ducc.transport.event.common.IDuccJobDeployment;
 import org.apache.uima.ducc.transport.event.common.IDuccProcess;
 import 
org.apache.uima.ducc.transport.event.common.IDuccProcessType.ProcessType;
+import org.apache.uima.ducc.transport.event.common.IProcessState.ProcessState;
 import org.apache.uima.ducc.transport.event.delegate.DuccEventDelegateListener;
 import org.springframework.beans.factory.annotation.Qualifier;
 
@@ -134,7 +135,10 @@ public class AgentEventListener implemen
                                        //      check if this node is a target 
for this job's JD 
                                        if ( 
isTargetNodeForProcess(jobDeployment.getJdProcess()) ) {
                                                // agent will check the state 
of JD process and either start, stop, or take no action
-                                               ICommandLine jdCommandLine = 
jobDeployment.getJdCmdLine();
+//                                             ICommandLine jdCommandLine = 
jobDeployment.getJdCmdLine();
+                                               
agent.reconcileProcessStateAndTakeAction(lifecycleController, 
jobDeployment.getJdProcess(), jobDeployment.getJdCmdLine(), 
+                                                               
jobDeployment.getStandardInfo(), jobDeployment.getProcessMemoryAssignment(), 
jobDeployment.getJobId());
+/*                                             
                                                if(jdCommandLine != null) {
                                                        
agent.reconcileProcessStateAndTakeAction(lifecycleController, 
jobDeployment.getJdProcess(), jobDeployment.getJdCmdLine(), 
                                                                
jobDeployment.getStandardInfo(), jobDeployment.getProcessMemoryAssignment(), 
jobDeployment.getJobId());
@@ -142,13 +146,17 @@ public class AgentEventListener implemen
                                                else {
                                                        
logger.error("onDuccJobsStateEvent", null, "job is service");
                                                }
+*/                                             
                                        } 
-                                       // check JPs
-                                       for( IDuccProcess process : 
jobDeployment.getJpProcessList() ) {
-                                               if ( 
isTargetNodeForProcess(process) ) {
-                         // agent will check the state of JP process and 
either start, stop, or take no action 
-                                                       
agent.reconcileProcessStateAndTakeAction(lifecycleController, process, 
jobDeployment.getJpCmdLine(), 
-                                                                       
jobDeployment.getStandardInfo(), jobDeployment.getProcessMemoryAssignment(), 
jobDeployment.getJobId());
+                                       // reconcile JP procees only if JD is OK
+                                       if ( 
!jobDeployment.getJdProcess().getProcessState().equals(ProcessState.Failed) )  {
+                                               // check JPs
+                                               for( IDuccProcess process : 
jobDeployment.getJpProcessList() ) {
+                                                       if ( 
isTargetNodeForProcess(process) ) {
+                                 // agent will check the state of JP process 
and either start, stop, or take no action 
+                                                               
agent.reconcileProcessStateAndTakeAction(lifecycleController, process, 
jobDeployment.getJpCmdLine(), 
+                                                                               
jobDeployment.getStandardInfo(), jobDeployment.getProcessMemoryAssignment(), 
jobDeployment.getJobId());
+                                                       }
                                                }
                                        }
                                }


Reply via email to