You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2013/03/19 16:51:42 UTC

svn commit: r1458355 - in /uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event: ./ cli/ common/

Author: degenaro
Date: Tue Mar 19 15:51:42 2013
New Revision: 1458355

URL: http://svn.apache.org/r1458355
Log:
UIMA-2732 DUCC support for monitoring of Managed Reservations, transport enhancements

Added:
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/AbstractDuccCancelEvent.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/IDuccContext.java
Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/CancelServiceDuccEvent.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobReplyProperties.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobSpecificationProperties.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/DuccWorkMap.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java

Added: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/AbstractDuccCancelEvent.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/AbstractDuccCancelEvent.java?rev=1458355&view=auto
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/AbstractDuccCancelEvent.java (added)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/AbstractDuccCancelEvent.java Tue Mar 19 15:51:42 2013
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+package org.apache.uima.ducc.transport.event;
+
+import org.apache.uima.ducc.transport.event.IDuccContext.DuccContext;
+
+@SuppressWarnings("serial")
+public class AbstractDuccCancelEvent extends AbstractDuccJobEvent {
+
+	private DuccContext context = DuccContext.Unspecified;
+	
+	public AbstractDuccCancelEvent(EventType eventType) {
+		super(eventType);
+	}
+	
+	public void setContext(DuccContext context) {
+		this.context = context;
+	}
+	
+	public DuccContext getContext() {
+		return context;
+	}
+
+}

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/CancelServiceDuccEvent.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/CancelServiceDuccEvent.java?rev=1458355&r1=1458354&r2=1458355&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/CancelServiceDuccEvent.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/CancelServiceDuccEvent.java Tue Mar 19 15:51:42 2013
@@ -19,12 +19,21 @@
 package org.apache.uima.ducc.transport.event;
 
 import org.apache.uima.ducc.common.utils.DuccProperties;
+import org.apache.uima.ducc.transport.event.IDuccContext.DuccContext;
 
 @SuppressWarnings("serial")
-public class CancelServiceDuccEvent extends AbstractDuccJobEvent {
+public class CancelServiceDuccEvent extends AbstractDuccCancelEvent {
 	
+	/*
 	public CancelServiceDuccEvent(DuccProperties props) {
 		super(EventType.CANCEL_SERVICE);
 		setProperties(props);
 	}
+	*/
+	
+	public CancelServiceDuccEvent(DuccProperties props, DuccContext context) {
+		super(EventType.CANCEL_SERVICE);
+		setProperties(props);
+		setContext(context);
+	}
 }

Added: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/IDuccContext.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/IDuccContext.java?rev=1458355&view=auto
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/IDuccContext.java (added)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/IDuccContext.java Tue Mar 19 15:51:42 2013
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+package org.apache.uima.ducc.transport.event;
+
+public interface IDuccContext {
+	
+	public enum DuccContext { Job, ManagedReservation, Reservation, Service, Unspecified };
+}

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobReplyProperties.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobReplyProperties.java?rev=1458355&r1=1458354&r2=1458355&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobReplyProperties.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobReplyProperties.java Tue Mar 19 15:51:42 2013
@@ -32,6 +32,7 @@ public class JobReplyProperties extends 
 	public static String msg_user_not_authorized = "user not authorized";
 	public static String msg_job_not_found = "job not found";
 	public static String msg_service_not_found = "service not found";
+	public static String msg_managed_reservation_not_found = "managed reservation not found";
 	public static String msg_process_not_found = "process not found";
 	public static String msg_process_not_active = "process not active";
 	public static String msg_process_canceled = "process canceled";

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobSpecificationProperties.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobSpecificationProperties.java?rev=1458355&r1=1458354&r2=1458355&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobSpecificationProperties.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/cli/JobSpecificationProperties.java Tue Mar 19 15:51:42 2013
@@ -79,6 +79,9 @@ public class JobSpecificationProperties 
     public static String key_wait_for_completion = "wait_for_completion";
     
 	public static String key_classpath_order = "classpath_order";
+	
+	public static String key_cancel_job_on_interrupt = "cancel_job_on_interrupt";
+	public static String key_cancel_managed_reservation_on_interrupt = "cancel_managed_reservation_on_interrupt";
 
 	public static String[] keys = {
 		JobRequestProperties.key_signature,
@@ -120,6 +123,8 @@ public class JobSpecificationProperties 
         key_service_dependency,
         key_wait_for_completion,
         key_classpath_order,
+        key_cancel_job_on_interrupt,
+        key_cancel_managed_reservation_on_interrupt,
 	};
 	
 	public boolean isRecognized(String key) {

Modified: uima/sandbox/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/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java?rev=1458355&r1=1458354&r2=1458355&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/ADuccWork.java Tue Mar 19 15:51:42 2013
@@ -40,6 +40,7 @@ public abstract class ADuccWork implemen
     private String[] serviceDependencies = null;
     private ServiceDeploymentType serviceDeploymentType = null;
     private String serviceEndpoint = null; // generated in submit
+    private boolean cancelOnInterrupt = false;
 	
 	@Override
 	public DuccId getDuccId() {
@@ -138,7 +139,17 @@ public abstract class ADuccWork implemen
     {
         return serviceEndpoint;
     }
+    
+    public void setCancelOnInterrupt()
+    {
+        this.cancelOnInterrupt = true;
+    }
 
+    public boolean isCancelOnInterrupt()
+    {
+    	return cancelOnInterrupt;
+    }
+    
 	public boolean isSchedulable() {
 		throw new RuntimeException("subclass must override: should never be here!");
 	}

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/DuccWorkMap.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/DuccWorkMap.java?rev=1458355&r1=1458354&r2=1458355&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/DuccWorkMap.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/DuccWorkMap.java Tue Mar 19 15:51:42 2013
@@ -29,6 +29,7 @@ import java.util.concurrent.atomic.Atomi
 import org.apache.commons.lang.SerializationUtils;
 import org.apache.uima.ducc.common.utils.id.DuccId;
 import org.apache.uima.ducc.transport.event.common.IDuccTypes.DuccType;
+import org.apache.uima.ducc.transport.event.common.IDuccWorkService.ServiceDeploymentType;
 
 
 @SuppressWarnings({ "rawtypes" })
@@ -95,6 +96,35 @@ public class DuccWorkMap implements Seri
 		return retVal;
 	}
 	
+	public Set<DuccId> getManagedReservationKeySet() {
+		Set<DuccId> retVal = new HashSet<DuccId>();
+		Iterator<DuccId> iterator = keySet().iterator();
+		while(iterator.hasNext()) {
+			DuccId duccId = iterator.next();
+			IDuccWork duccWork = concurrentWorkMap.get(duccId);
+			if(duccWork != null) {
+				switch(duccWork.getDuccType()) {
+				case Service:
+					DuccWorkJob service = (DuccWorkJob)duccWork;
+					ServiceDeploymentType sdt = service.getServiceDeploymentType();
+					if(sdt != null) {
+						switch(sdt) {
+						case other:
+							retVal.add(duccId);
+							break;
+						default:
+							break;
+						}
+					}
+					break;
+				default:
+					break;
+				}
+			}
+		}
+		return retVal;
+	}
+	
 	public int getReservationCount() {
 		return atomicReservationCount.get();
 	}

Modified: uima/sandbox/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/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java?rev=1458355&r1=1458354&r2=1458355&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-transport/src/main/java/org/apache/uima/ducc/transport/event/common/IDuccWork.java Tue Mar 19 15:51:42 2013
@@ -53,4 +53,6 @@ public interface IDuccWork extends Seria
 	public boolean isSchedulable();
 	public boolean isCompleted();
 	public boolean isOperational();
+	
+	public boolean isCancelOnInterrupt();
 }