Author: degenaro
Date: Tue Dec 11 16:47:02 2018
New Revision: 1848697

URL: http://svn.apache.org/viewvc?rev=1848697&view=rev
Log:
UIMA-5928 DUCC Agent quiesce should wait (forever) for non-fairshare 
displatchables to complete before shutting down

Provide method interface and implementation to determine preemptability status 
of dispatchable entities, where returned value is boolean or Exception.

Modified:
    
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java
    
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java

Modified: 
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java
URL: 
http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java?rev=1848697&r1=1848696&r2=1848697&view=diff
==============================================================================
--- 
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java
 (original)
+++ 
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java
 Tue Dec 11 16:47:02 2018
@@ -95,27 +95,11 @@ public abstract class ADuccWork implemen
                this.duccSchedulingInfo = schedulingInfo;
        }
 
-       // Evaluate preemptability of scheduling class for entity: { 1 == yes, 
-1 == no, 0 == dunno }
-       public int getPreemptableStatus() {
-               int retVal = 0;  // dunno
-               try {
-                       if(duccSchedulingInfo != null) {
-                               String class_name = 
duccSchedulingInfo.getSchedulingClass();
-                               if(class_name != null) {
-                                       DuccSchedulerClasses 
duccSchedulerClasses = DuccSchedulerClasses.getInstance();
-                                       boolean preemptable = 
duccSchedulerClasses.isPreemptable(class_name);
-                                       if(preemptable) {
-                                               retVal = 0+1; // yes
-                                       }
-                                       else {
-                                               retVal = 0-1; // no
-                                       }
-                               }
-                       }
-               }
-               catch(Exception e) {
-                       // dunno
-               }
+       // Evaluate preemptability of scheduling class for entity:
+       public boolean getPreemptableStatus() throws Exception {
+               String class_name = duccSchedulingInfo.getSchedulingClass();
+               DuccSchedulerClasses duccSchedulerClasses = 
DuccSchedulerClasses.getInstance();
+               boolean retVal = duccSchedulerClasses.isPreemptable(class_name);
                return retVal;
        }
        

Modified: 
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java
URL: 
http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java?rev=1848697&r1=1848696&r2=1848697&view=diff
==============================================================================
--- 
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java
 (original)
+++ 
uima/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java
 Tue Dec 11 16:47:02 2018
@@ -41,8 +41,8 @@ public interface IDuccWork extends Ident
        public IDuccSchedulingInfo getSchedulingInfo();
        public void setSchedulingInfo(IDuccSchedulingInfo schedulingInfo);
        
-       // Evaluate preemptability of scheduling class for entity: { 1 == yes, 
-1 == no, 0 == dunno }
-       public int getPreemptableStatus();
+       // Evaluate preemptability of scheduling class for entity
+       public boolean getPreemptableStatus() throws Exception;
        
        public Object getStateObject();
        public void setStateObject(Object state);


Reply via email to