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 2015/02/10 21:07:06 UTC

svn commit: r1658792 - /uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/factory/JobFactoryV2.java

Author: degenaro
Date: Tue Feb 10 20:07:06 2015
New Revision: 1658792

URL: http://svn.apache.org/r1658792
Log:
UIMA-4069 DUCC Job Driver (JD) system classpath

support ducc_submit --driver_exception_handler_agurments max_job_errors=<int> in default error handler

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/factory/JobFactoryV2.java

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/factory/JobFactoryV2.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/factory/JobFactoryV2.java?rev=1658792&r1=1658791&r2=1658792&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/factory/JobFactoryV2.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-orchestrator/src/main/java/org/apache/uima/ducc/orchestrator/factory/JobFactoryV2.java Tue Feb 10 20:07:06 2015
@@ -336,6 +336,17 @@ public class JobFactoryV2 implements IJo
 		addDashD(jcl, FlagsHelper.Name.JpThreadCount, jobRequestProperties.getProperty(JobSpecificationProperties.key_process_thread_count));
 		addDashD(jcl, FlagsHelper.Name.JpDdBrokerURL,  FlagsHelper.Name.JpDdBrokerURL.getDefaultValue());
 		addDashD(jcl, FlagsHelper.Name.JpDdBrokerEndpoint, FlagsHelper.Name.JpDdBrokerEndpoint.getDefaultValue());
+		//
+		Name flagName;
+		String flagValue;
+		//
+		flagName = FlagsHelper.Name.UserErrorHandlerClassname;
+		flagValue = jobRequestProperties.getProperty(JobSpecificationProperties.key_driver_exception_handler);
+		addDashD(jcl, flagName, flagValue);
+		//
+		flagName = FlagsHelper.Name.UserErrorHandlerCfg;
+		flagValue = jobRequestProperties.getProperty(JobSpecificationProperties.key_driver_exception_handler_arguments);
+		addDashD(jcl, flagName, flagValue);
 		// Name the log config file explicitly - the default of searching the user-provided classpath is dangerous
 		jcl.addOption("-Dlog4j.configuration=file://" + Utils.findDuccHome() + "/resources/log4j.xml");
 		// Log directory
@@ -343,15 +354,33 @@ public class JobFactoryV2 implements IJo
 		return jcl;
 	}
 	
-	private void addDashD(JavaCommandLine jcl, Name name, String value) {
+	private void addDashD(JavaCommandLine jcl, String flagName, String flagValue) {
 		String location = "addDashD";
-		logger.debug(location, null, name.dname()+"="+value);
-		if(value != null) {
-			String opt = name.dname()+"="+value;
-			jcl.addOption(opt);
+		logger.debug(location, null, flagName+"="+flagValue);
+		if(jcl != null) {
+			if(flagName != null) {
+				String optName = flagName.trim();
+				if(optName.length() > 0) {
+					if(flagValue != null) {
+						String optValue = flagValue.trim();
+						if(optValue.length() > 0) {
+							String opt = optName+"="+optValue;
+							jcl.addOption(opt);
+						}
+					}
+				}
+			}
 		}
 	}
 	
+	private void addDashD(JavaCommandLine jcl, Name name, String flagValue) {
+		String flagName = null;
+		if(name != null) {
+			flagName = name.dname();
+		}
+		addDashD(jcl, flagName, flagValue);
+	}
+	
 	private void createDriver(CommonConfiguration common, JobRequestProperties jobRequestProperties,  DuccWorkJob job) {
 		String methodName = "createDriver";
 		DuccPropertiesResolver duccPropertiesResolver = DuccPropertiesResolver.getInstance();