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/04/15 21:20:25 UTC
svn commit: r1468197 - in
/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli:
DuccJobSubmit.java aio/AllInOne.java aio/AllInOneLauncher.java
aio/CasGenerator.java
Author: degenaro
Date: Mon Apr 15 19:20:24 2013
New Revision: 1468197
URL: http://svn.apache.org/r1468197
Log:
UIMA-2793 Support --all_in_one remote
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java
uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOne.java
uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java
uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/CasGenerator.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java?rev=1468197&r1=1468196&r2=1468197&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccJobSubmit.java Mon Apr 15 19:20:24 2013
@@ -47,14 +47,15 @@ public class DuccJobSubmit
public static UiOption[] opts_release = new UiOption[] {
UiOption.Help,
UiOption.Debug,
-
+ UiOption.Timestamp,
+
UiOption.AllInOne,
UiOption.ProcessDebug,
UiOption.ProcessAttachConsole,
UiOption.DriverDebug,
UiOption.DriverAttachConsole,
- UiOption.Timestamp,
+
UiOption.Description,
UiOption.SchedulingClass,
@@ -89,7 +90,7 @@ public class DuccJobSubmit
UiOption.Specification,
UiOption.WaitForCompletion,
- UiOption.CancelJobOnInterrupt,
+ UiOption.CancelOnInterrupt,
UiOption.ServiceDependency,
UiOption.ClasspathOrder,
};
@@ -97,14 +98,15 @@ public class DuccJobSubmit
public static UiOption[] opts_beta = new UiOption[] {
UiOption.Help,
UiOption.Debug,
-
+ UiOption.Timestamp,
+
UiOption.AllInOne,
UiOption.ProcessDebug,
UiOption.ProcessAttachConsole,
UiOption.DriverDebug,
UiOption.DriverAttachConsole,
- UiOption.Timestamp,
+
UiOption.Description,
UiOption.SchedulingClass,
@@ -112,7 +114,6 @@ public class DuccJobSubmit
UiOption.WorkingDirectory,
UiOption.Jvm,
- UiOption.JvmArgs,
UiOption.Classpath,
UiOption.Environment,
@@ -145,6 +146,7 @@ public class DuccJobSubmit
UiOption.Specification,
UiOption.WaitForCompletion,
+ UiOption.CancelOnInterrupt,
UiOption.CancelJobOnInterrupt,
UiOption.ServiceDependency,
UiOption.ClasspathOrder,
@@ -219,10 +221,6 @@ public class DuccJobSubmit
{
String key_process = UiOption.ProcessJvmArgs.pname();
String key_driver = UiOption.ProcessJvmArgs.pname();
- if(jobRequestProperties.containsKey(UiOption.JvmArgs.pname())) {
- key_process = UiOption.JvmArgs.pname();
- key_driver = UiOption.JvmArgs.pname();
- }
try {
int jp_debug_port = -1;
int jd_debug_port = -2; // a trick, must be different from jp_debug_port; see below
@@ -465,28 +463,12 @@ public class DuccJobSubmit
/*
* adjust driver and process jvm args
*/
- boolean ja0 = jobRequestProperties.containsKey(UiOption.JvmArgs.pname());
boolean jad = jobRequestProperties.containsKey(UiOption.DriverJvmArgs.pname());
boolean jap = jobRequestProperties.containsKey(UiOption.ProcessJvmArgs.pname());
- if(ja0 && jad) {
- throw new IllegalArgumentException("Conflict: cannot specify both "+UiOption.JvmArgs.pname()+" and "+UiOption.DriverJvmArgs.pname());
- }
- if(ja0 && jap) {
- throw new IllegalArgumentException("Conflict: cannot specify both "+UiOption.JvmArgs.pname()+" and "+UiOption.ProcessJvmArgs.pname());
- }
-
- if(ja0) {
- adjust_specific_jvm_args(DuccPropertiesResolver.ducc_submit_driver_jvm_args, UiOption.JvmArgs);
- }
- else {
- if(jad || jap) {
- adjust_specific_jvm_args(DuccPropertiesResolver.ducc_submit_driver_jvm_args, UiOption.DriverJvmArgs);
- adjust_specific_jvm_args(DuccPropertiesResolver.ducc_submit_process_jvm_args, UiOption.ProcessJvmArgs);
- }
- else {
- adjust_specific_jvm_args(DuccPropertiesResolver.ducc_submit_driver_jvm_args, UiOption.JvmArgs);
- }
+ if(jad || jap) {
+ adjust_specific_jvm_args(DuccPropertiesResolver.ducc_submit_driver_jvm_args, UiOption.DriverJvmArgs);
+ adjust_specific_jvm_args(DuccPropertiesResolver.ducc_submit_process_jvm_args, UiOption.ProcessJvmArgs);
}
/*
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOne.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOne.java?rev=1468197&r1=1468196&r2=1468197&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOne.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOne.java Mon Apr 15 19:20:24 2013
@@ -106,11 +106,11 @@ public class AllInOne extends CliBase {
mh.frameworkTrace(cid, mid, "enter");
int count = 0;
int total = casGenerator.getTotal();
- mh.frameworkInfo(cid, mid, "total:"+total);
+ mh.frameworkDebug(cid, mid, "total:"+total);
CAS cas = null;
while(casGenerator.hasNext()) {
cas = casGenerator.getCas(cas);
- mh.frameworkInfo(cid, mid, "cas:"+count);
+ mh.frameworkDebug(cid, mid, "cas:"+count);
casPipeline.process(cas);
count++;
}
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java?rev=1468197&r1=1468196&r2=1468197&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java Mon Apr 15 19:20:24 2013
@@ -1,5 +1,5 @@
/*
- * Licensed to the Apache Software Foundation (ASF) under one
+as * 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
@@ -24,11 +24,14 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.HashMap;
import java.util.Map;
import org.apache.commons.cli.MissingArgumentException;
import org.apache.uima.ducc.cli.CliBase;
import org.apache.uima.ducc.cli.DuccJobSubmit;
+import org.apache.uima.ducc.cli.DuccManagedReservationSubmit;
import org.apache.uima.ducc.cli.aio.IMessageHandler.Level;
import org.apache.uima.ducc.cli.aio.IMessageHandler.Toggle;
import org.apache.uima.ducc.transport.event.cli.JobRequestProperties;
@@ -43,23 +46,25 @@ public class AllInOneLauncher extends Cl
private static String remote = "remote";
private static String local = "local";
+ //TODO get scheduling class from ducc.properties
+ private static String fixed = "fixed";
+
+ private static String enter = "enter";
+ private static String exit = "exit";
+
private String allInOneType = null;
+ private String attach_console = null;
+
private String jvm = null;
+ private String log_directory = null;
private String working_directory = null;
- private String driver_jvm_args = null;
- private String process_jvm_args = null;
- private String jvm_args = null;
-
- private String driver_classpath = null;
- private String process_classpath = null;
private String classpath = null;
-
- private String driver_environment = null;
- private String process_environment = null;
private String environment = null;
+ private String process_jvm_args = null;
+
private String driver_descriptor_CR = null;
private String driver_descriptor_CR_overrides = null;
@@ -74,6 +79,18 @@ public class AllInOneLauncher extends Cl
private String process_DD = null;
+ private String process_memory_size = null;
+ private String description = null;
+ private String scheduling_class = fixed;
+
+ private String specification = null;
+
+ private String signature = null;
+ private String user = null;
+
+ private boolean wait_for_completion = false;
+ private boolean cancel_on_interrupt = false;
+
private boolean classpath_user_first = true;
private IMessageHandler mh = new MessageHandler();
@@ -83,161 +100,266 @@ public class AllInOneLauncher extends Cl
private String[] args = new String[0];
private UiOption[] opts = DuccJobSubmit.opts;
+ private HashMap<String,String> optionsMap = new HashMap<String,String>();
+
public AllInOneLauncher(String[] args) throws Exception {
this.args = args;
init(this.getClass().getName(), opts, args, jobRequestProperties, or_host, or_port, "or", consoleCb, null);
}
+ private boolean isLocal() {
+ return allInOneType.equalsIgnoreCase(local);
+ }
+
+ private void ignored() {
+ String mid = "ignored";
+ mh.frameworkTrace(cid, mid, enter);
+ Enumeration<Object> keys = jobRequestProperties.keys();
+ while(keys.hasMoreElements()) {
+ Object key = keys.nextElement();
+ boolean examined = optionsMap.containsKey(key);
+ if(!examined) {
+ String message = "ignoring "+key;
+ mh.warn(cid, mid, message);
+ }
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void used(String opt) {
+ String mid = "used";
+ mh.frameworkTrace(cid, mid, enter);
+ optionsMap.put(opt,opt);
+ String message = opt;
+ mh.frameworkDebug(cid, mid, message);
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void enableDebugFlags() {
+ String mid = "enableDebugFlags";
+ mh.frameworkTrace(cid, mid, enter);
+ mh.setLevel(Level.FrameworkInfo, Toggle.On);
+ mh.setLevel(Level.FrameworkDebug, Toggle.On);
+ mh.setLevel(Level.FrameworkError, Toggle.On);
+ mh.setLevel(Level.FrameworkWarn, Toggle.On);
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ // debug
+
private void examine_debug() {
String mid = "examine_debug";
- debug = jobRequestProperties.containsKey(UiOption.Debug.pname());
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Debug.pname();
+ debug = jobRequestProperties.containsKey(pname);
if(debug) {
- mh.setLevel(Level.FrameworkInfo, Toggle.On);
- mh.setLevel(Level.FrameworkDebug, Toggle.On);
- mh.setLevel(Level.FrameworkError, Toggle.On);
- mh.setLevel(Level.FrameworkWarn, Toggle.On);
+ enableDebugFlags();
String message = "true";
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
- else {
- String message = "false";
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_debug() {
+ String mid = "examine_process_debug";
+ mh.frameworkTrace(cid, mid, enter);
+ if(jobRequestProperties.containsKey(UiOption.Debug.pname())) {
+ return;
+ }
+ String pname = UiOption.ProcessDebug.pname();
+ debug = jobRequestProperties.containsKey(pname);
+ if(debug) {
+ enableDebugFlags();
+ String message = "true";
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
+ private void examine_driver_debug() {
+ String mid = "examine_driver_debug";
+ mh.frameworkTrace(cid, mid, enter);
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ // timestamp
+
private void examine_timestamp() {
String mid = "examine_timestamp";
- boolean timestamp = jobRequestProperties.containsKey(UiOption.Timestamp.pname());
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Timestamp.pname();
+ boolean timestamp = jobRequestProperties.containsKey(pname);
if(timestamp) {
mh.setTimestamping(Toggle.On);
String message = "true";
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
- else {
- String message = "false";
- mh.frameworkDebug(cid, mid, message);
- }
+ mh.frameworkTrace(cid, mid, exit);
}
+
+ // all-in-one
private void examine_allInOne() throws MissingArgumentException, IllegalArgumentException {
String mid = "examine_allInOne";
- allInOneType = jobRequestProperties.getProperty(UiOption.AllInOne.pname());
- if(allInOneType == null) {
- throw new MissingArgumentException(UiOption.AllInOne.pname());
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.AllInOne.pname();
+ allInOneType = jobRequestProperties.getProperty(pname);
+ if(allInOneType == null) {
+ throw new MissingArgumentException(pname);
}
- if(allInOneType.equalsIgnoreCase(local)) {
- String message = allInOneType;
- mh.frameworkDebug(cid, mid, message);
- }
- else if(allInOneType.equalsIgnoreCase(remote)) {
+ if(allInOneType.equalsIgnoreCase(local)) {
String message = allInOneType;
mh.frameworkDebug(cid, mid, message);
- //TODO
- throw new IllegalArgumentException(UiOption.AllInOne.pname()+": "+allInOneType+" not supported");
- }
- else {
- throw new IllegalArgumentException(UiOption.AllInOne.pname()+": "+allInOneType);
+ used(pname);
}
+ else if(allInOneType.equalsIgnoreCase(remote)) {
+ String message = allInOneType;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ else {
+ throw new IllegalArgumentException(pname+": "+allInOneType);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ // attach-console
+
+ private void examine_process_attach_console() {
+ String mid = "examine_process_attach_console";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessAttachConsole.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ attach_console = jobRequestProperties.getProperty(pname);
+ String message = attach_console;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
}
+ private void examine_driver_attach_console() {
+ String mid = "examine_driver_attach_console";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ // jvm
+
private void examine_jvm() {
String mid = "examine_jvm";
- String key = UiOption.Jvm.pname();
- if(jobRequestProperties.containsKey(key)) {
- jvm = jobRequestProperties.getProperty(key);
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Jvm.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ jvm = jobRequestProperties.getProperty(pname);
String message = jvm;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
else {
jvm = System.getProperty("java.home")+File.separator+"bin"+File.separator+"java";
String message = jvm;
mh.frameworkDebug(cid, mid, message);
}
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_log_directory() {
+ String mid = "examine_log_directory";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.LogDirectory.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ log_directory = jobRequestProperties.getProperty(pname);
+ String message = log_directory;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_working_directory() {
String mid = "examine_working_directory";
- String key = UiOption.WorkingDirectory.pname();
- if(jobRequestProperties.containsKey(key)) {
- working_directory = jobRequestProperties.getProperty(key);
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.WorkingDirectory.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ working_directory = jobRequestProperties.getProperty(pname);
String message = working_directory;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
else {
working_directory = System.getProperty("user.dir");
String message = working_directory;
mh.frameworkDebug(cid, mid, message);
}
- }
-
- private void examine_driver_jvm_args() {
- String mid = "examine_driver_jvm_args";
- String key = UiOption.DriverJvmArgs.pname();
- if(jobRequestProperties.containsKey(key)) {
- driver_jvm_args = jobRequestProperties.getProperty(key);
- String message = driver_jvm_args;
- mh.frameworkDebug(cid, mid, message);
- }
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_jvm_args() {
String mid = "examine_process_jvm_args";
- String key = UiOption.ProcessJvmArgs.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_jvm_args = jobRequestProperties.getProperty(key);
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessJvmArgs.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_jvm_args = jobRequestProperties.getProperty(pname);
String message = process_jvm_args;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
- private void examine_jvm_args() {
- String mid = "examine_jvm_args";
- String key = UiOption.JvmArgs.pname();
- if(jobRequestProperties.containsKey(key)) {
- jvm_args = jobRequestProperties.getProperty(key);
- String message = jvm_args;
- mh.frameworkDebug(cid, mid, message);
- }
- if(jobRequestProperties.containsKey(key)) {
- throw new IllegalArgumentException(UiOption.JvmArgs.pname()+" disallowed");
- }
+ private void examine_driver_jvm_args() {
+ String mid = "examine_driver_jvm_args";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
}
- private void examine_driver_classpath() {
- String mid = "examine_driver_classpath";
- String key = UiOption.DriverClasspath.pname();
- if(jobRequestProperties.containsKey(key)) {
- driver_classpath = jobRequestProperties.getProperty(key);
- String message = driver_classpath;
+ private void examine_classpath() {
+ String mid = "examine_classpath";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Classpath.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ classpath = jobRequestProperties.getProperty(pname);
+ String message = classpath;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_classpath() {
String mid = "examine_process_classpath";
- String key = UiOption.ProcessClasspath.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_classpath = jobRequestProperties.getProperty(key);
- String message = process_classpath;
+ mh.frameworkTrace(cid, mid, enter);
+ if(jobRequestProperties.containsKey(UiOption.Classpath.pname())) {
+ return;
+ }
+ String pname = UiOption.ProcessClasspath.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ classpath = jobRequestProperties.getProperty(pname);
+ String message = classpath;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
- private void examine_classpath() {
- String mid = "examine_classpath";
- String key = UiOption.Classpath.pname();
- if(jobRequestProperties.containsKey(key)) {
- classpath = jobRequestProperties.getProperty(key);
- String message = classpath;
- mh.frameworkDebug(cid, mid, message);
- }
+ private void examine_driver_classpath() {
+ String mid = "examine_driver_classpath";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_classpath_order() {
String mid = "examine_classpath_order";
- String key = UiOption.ClasspathOrder.pname();
- if(jobRequestProperties.containsKey(key)) {
- String value = jobRequestProperties.getProperty(key);
+ String pname = UiOption.ClasspathOrder.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ String value = jobRequestProperties.getProperty(pname);
if(value != null) {
if(value.equalsIgnoreCase(ClasspathOrderParms.UserBeforeDucc.name())) {
classpath_user_first = true;
@@ -251,88 +373,13 @@ public class AllInOneLauncher extends Cl
}
String message = value;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
}
- private void examine_driver_environment() {
- String mid = "examine_driver_environment";
- String key = UiOption.DriverEnvironment.pname();
- if(jobRequestProperties.containsKey(key)) {
- driver_environment = jobRequestProperties.getProperty(key);
- String message = driver_environment;
- mh.frameworkDebug(cid, mid, message);
- }
- }
-
- private void examine_process_environment() {
- String mid = "examine_process_environment";
- String key = UiOption.ProcessEnvironment.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_environment = jobRequestProperties.getProperty(key);
- String message = process_environment;
- mh.frameworkDebug(cid, mid, message);
- }
- }
-
- private void reconcile_jvm_args() {
- String mid = "reconcile_jvm_args";
- if(process_jvm_args != null) {
- jvm_args = process_jvm_args;
- String message = "using "+UiOption.ProcessJvmArgs.pname()+": "+jvm_args;
- mh.frameworkInfo(cid, mid, message);
- }
- if(driver_jvm_args != null) {
- String message = "ignoring "+UiOption.DriverJvmArgs.pname()+": "+jvm_args;
- mh.frameworkWarn(cid, mid, message);
- }
- /*
- if(jvm_args != null) {
- if(process_jvm_args != null) {
- throw new IllegalArgumentException(UiOption.ProcessJvmArgs.pname());
- }
- else if(driver_jvm_args != null) {
- throw new IllegalArgumentException(UiOption.DriverJvmArgs.pname());
- }
- }
- else if(process_jvm_args != null) {
- jvm_args = process_jvm_args;
- String message = "using process jvm_args: "+jvm_args;
- mh.frameworkInfo(cid, mid, message);
- }
- else if(driver_jvm_args != null) {
- jvm_args = driver_jvm_args;
- String message = "using driver jvm_args: "+jvm_args;
- mh.frameworkInfo(cid, mid, message);
- }
- else {
- // no default
- }
- */
- }
-
private void reconcile_classpath() {
String mid = "reconcile_classpath";
if(classpath != null) {
- if(process_classpath != null) {
- throw new IllegalArgumentException(UiOption.ProcessClasspath.pname());
- }
- else if(driver_classpath != null) {
- throw new IllegalArgumentException(UiOption.DriverClasspath.pname());
- }
- String message = "using classpath";
- mh.frameworkDebug(cid, mid, message);
- }
- else if(process_classpath != null) {
- classpath = process_classpath;
- String message = "using process classpath";
- mh.frameworkDebug(cid, mid, message);
- }
- else if(driver_classpath != null) {
- classpath = driver_classpath;
- String message = "using driver classpath";
- mh.frameworkDebug(cid, mid, message);
- }
- if(classpath != null) {
if(classpath_user_first) {
classpath = System.getProperty("java.class.path")+File.pathSeparatorChar+classpath;
String message = "user first";
@@ -351,110 +398,367 @@ public class AllInOneLauncher extends Cl
}
}
- private void reconcile_environment() {
- String mid = "reconcile_environment";
- if(process_environment != null) {
- environment = process_environment;
- String message = "using process environment: "+environment;
- mh.frameworkInfo(cid, mid, message);
- }
- else if(driver_environment != null) {
- environment = driver_environment;
- String message = "using driver environment: "+environment;
+ private void examine_environment() {
+ String mid = "examine_environment";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Environment.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ environment = jobRequestProperties.getProperty(pname);
+ String message = environment;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_environment() {
+ String mid = "examine_process_environment";
+ mh.frameworkTrace(cid, mid, enter);
+ if(jobRequestProperties.containsKey(UiOption.Environment.pname())) {
+ return;
+ }
+ String pname = UiOption.ProcessEnvironment.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ environment = jobRequestProperties.getProperty(pname);
+ String message = environment;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_driver_environment() {
+ String mid = "examine_driver_environment";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_description() {
+ String mid = "examine_description";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Description.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ description = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+description;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_scheduling_class() {
+ String mid = "examine_scheduling_class";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.SchedulingClass.pname();
+ if(isLocal()) {
+ String message = pname+"="+scheduling_class;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ else if(jobRequestProperties.containsKey(pname)) {
+ String user_scheduling_class = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+scheduling_class;
+ if(user_scheduling_class == null) {
+ }
+ else if(!user_scheduling_class.trim().equals(scheduling_class)) {
+ message = pname+"="+scheduling_class+" "+"replaces"+" "+user_scheduling_class;
+ }
mh.frameworkInfo(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_deployments_max() {
+ String mid = "examine_process_deployments_max";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_initialization_failures_cap() {
+ String mid = "examine_process_initialization_failures_cap";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_failures_limit() {
+ String mid = "examine_process_failures_limit";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_thread_count() {
+ String mid = "examine_process_thread_count";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_per_item_time_max() {
+ String mid = "examine_process_per_itm_time_max";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_get_meta_time_max() {
+ String mid = "examine_process_get_meta_time_max";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_service_dependency() {
+ String mid = "examine_service_dependency";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_signature() {
+ String mid = "examine_signature";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Signature.pname();
+ if(isLocal()) {
+ used(pname);
+ }
+ if(jobRequestProperties.containsKey(pname)) {
+ signature = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+signature;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_user() {
+ String mid = "examine_user";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.User.pname();
+ if(isLocal()) {
+ used(pname);
+ }
+ if(jobRequestProperties.containsKey(pname)) {
+ user = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+user;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_driver_descriptor_CR() {
String mid = "examine_driver_descriptor_CR";
- String key = UiOption.DriverDescriptorCR.pname();
- if(jobRequestProperties.containsKey(key)) {
- driver_descriptor_CR = jobRequestProperties.getProperty(key);
- String message = key+"="+driver_descriptor_CR;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.DriverDescriptorCR.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ driver_descriptor_CR = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+driver_descriptor_CR;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_driver_descriptor_CR_overrides() {
String mid = "examine_driver_descriptor_CR_overrides";
- String key = UiOption.DriverDescriptorCROverrides.pname();
- if(jobRequestProperties.containsKey(key)) {
- driver_descriptor_CR_overrides = jobRequestProperties.getProperty(key);
- String message = key+"="+driver_descriptor_CR_overrides;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.DriverDescriptorCROverrides.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ driver_descriptor_CR_overrides = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+driver_descriptor_CR_overrides;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_driver_exception_handler() {
+ String mid = "examine_driver_exception_handler";
+ mh.frameworkTrace(cid, mid, enter);
+ // ignored
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_memory_size() {
+ String mid = "examine_process_memory_size";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessMemorySize.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ if(isLocal()) {
+ //ignored
+ }
+ else {
+ process_memory_size = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_memory_size;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_process_DD() {
+ String mid = "examine_process_DD";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessDD.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_DD = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_DD;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_descriptor_CM() {
String mid = "examine_process_descriptor_CM";
- String key = UiOption.ProcessDescriptorCM.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_descriptor_CM = jobRequestProperties.getProperty(key);
- String message = key+"="+process_descriptor_CM;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessDescriptorCM.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_descriptor_CM = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_descriptor_CM;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_descriptor_CM_overrides() {
String mid = "examine_process_descriptor_CMOverrides";
- String key = UiOption.ProcessDescriptorCMOverrides.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_descriptor_CM_overrides = jobRequestProperties.getProperty(key);
- String message = key+"="+process_descriptor_CM_overrides;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessDescriptorCMOverrides.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_descriptor_CM_overrides = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_descriptor_CM_overrides;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_descriptor_AE() {
String mid = "examine_process_descriptor_AE";
- String key = UiOption.ProcessDescriptorAE.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_descriptor_AE = jobRequestProperties.getProperty(key);
- String message = key+"="+process_descriptor_AE;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessDescriptorAE.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_descriptor_AE = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_descriptor_AE;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_descriptor_AE_overrides() {
String mid = "examine_process_descriptor_AE_overrides";
- String key = UiOption.ProcessDescriptorAEOverrides.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_descriptor_AE_overrides = jobRequestProperties.getProperty(key);
- String message = key+"="+process_descriptor_AE_overrides;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessDescriptorAEOverrides.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_descriptor_AE_overrides = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_descriptor_AE_overrides;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_descriptor_CC() {
String mid = "examine_process_descriptor_CC";
- String key = UiOption.ProcessDescriptorCC.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_descriptor_CC = jobRequestProperties.getProperty(key);
- String message = key+"="+process_descriptor_CC;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessDescriptorCC.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_descriptor_CC = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_descriptor_CC;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
private void examine_process_descriptor_CC_overrides() {
String mid = "examine_process_descriptor_CC_overrides";
- String key = UiOption.ProcessDescriptorCCOverrides.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_descriptor_CC_overrides = jobRequestProperties.getProperty(key);
- String message = key+"="+process_descriptor_CC_overrides;
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.ProcessDescriptorCCOverrides.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ process_descriptor_CC_overrides = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+process_descriptor_CC_overrides;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
- private void examine_process_DD() {
- String mid = "examine_process_DD";
- String key = UiOption.ProcessDD.pname();
- if(jobRequestProperties.containsKey(key)) {
- process_DD = jobRequestProperties.getProperty(key);
- String message = key+"="+process_DD;
+ private void examine_specification() {
+ String mid = "examine_specification";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.Specification.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ specification = jobRequestProperties.getProperty(pname);
+ String message = pname+"="+specification;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_wait_for_completion() {
+ String mid = "examine_wait_for_completion";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.WaitForCompletion.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ wait_for_completion = true;
+ String message = pname+"="+wait_for_completion;
mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_cancel_job_on_interrupt() {
+ String mid = "examine_cancel_job_on_interrupt";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.CancelJobOnInterrupt.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ cancel_on_interrupt = true;
+ wait_for_completion = true;
+ String message = pname+"="+cancel_on_interrupt;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_cancel_on_interrupt() {
+ String mid = "examine_cancel_on_interrupt";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = UiOption.CancelOnInterrupt.pname();
+ if(jobRequestProperties.containsKey(pname)) {
+ cancel_on_interrupt = true;
+ wait_for_completion = true;
+ String message = pname+"="+cancel_on_interrupt;
+ mh.frameworkDebug(cid, mid, message);
+ used(pname);
+ }
+ mh.frameworkTrace(cid, mid, exit);
+ }
+
+ private void examine_submitter_pid_at_host() {
+ String mid = "examine_submitter_pid_at_host";
+ mh.frameworkTrace(cid, mid, enter);
+ String pname = "submitter_pid_at_host";
+ if(jobRequestProperties.containsKey(pname)) {
+ used(pname);
}
+ mh.frameworkTrace(cid, mid, exit);
}
+ /////
+
private void reconcile_descriptors() throws MissingArgumentException {
if(driver_descriptor_CR == null) {
throw new MissingArgumentException(UiOption.DriverDescriptorCR.pname());
@@ -500,8 +804,16 @@ public class AllInOneLauncher extends Cl
String mid = "examine";
mh.frameworkTrace(cid, mid, "enter");
- // debug & timestamp
+ // debug
examine_debug();
+ examine_process_debug();
+ examine_driver_debug();
+
+ // console
+ examine_process_attach_console();
+ examine_driver_attach_console();
+
+ // timestamp
examine_timestamp();
// all_in_one
@@ -510,26 +822,30 @@ public class AllInOneLauncher extends Cl
// jvm
examine_jvm();
+ // log_directory
+ examine_log_directory();
+
// working_directory
examine_working_directory();
// jvm_args
- examine_driver_jvm_args();
examine_process_jvm_args();
- examine_jvm_args();
- reconcile_jvm_args();
+ examine_driver_jvm_args();
// classpath
- examine_driver_classpath();
- examine_process_classpath();
examine_classpath();
+ examine_process_classpath();
+ examine_driver_classpath();
examine_classpath_order();
reconcile_classpath();
// environment
+ examine_environment();
examine_driver_environment();
examine_process_environment();
- reconcile_environment();
+
+ // jd
+ examine_driver_exception_handler();
// uima
examine_driver_descriptor_CR();
@@ -543,6 +859,44 @@ public class AllInOneLauncher extends Cl
examine_process_DD();
reconcile_descriptors();
+ // memory
+ examine_process_memory_size();
+
+ // various ignored
+ examine_process_deployments_max();
+ examine_process_initialization_failures_cap();
+ examine_process_failures_limit();
+ examine_process_thread_count();
+ examine_process_per_item_time_max();
+ examine_process_get_meta_time_max();
+ examine_service_dependency();
+
+ // description
+ examine_description();
+
+ // scheduling_class
+ examine_scheduling_class();
+
+ // wait_for_completion & cancel
+ examine_wait_for_completion();
+ examine_cancel_on_interrupt();
+ examine_cancel_job_on_interrupt();
+
+ // specification - handled by super()
+ examine_specification();
+
+ // signature - handled by super()
+ examine_signature();
+
+ // user - handled by super()
+ examine_user();
+
+ // submitter_pid_at_host
+ examine_submitter_pid_at_host();
+
+ // ignored
+ ignored();
+
mh.frameworkTrace(cid, mid, "exit");
}
@@ -564,8 +918,8 @@ public class AllInOneLauncher extends Cl
mh.frameworkDebug(cid, mid, message);
}
- if(jvm_args != null) {
- String[] jvmargs = jvm_args.split(" ");
+ if(process_jvm_args != null) {
+ String[] jvmargs = process_jvm_args.split(" ");
for(String jvmarg : jvmargs) {
message = "jvmarg: "+jvmarg;
mh.frameworkDebug(cid, mid, message);
@@ -573,13 +927,15 @@ public class AllInOneLauncher extends Cl
}
}
- commandArray.add("org.apache.uima.ducc.cli.aio.AllInOne");
+ //commandArray.add("org.apache.uima.ducc.cli.aio.AllInOne");
+ commandArray.add(AllInOne.class.getCanonicalName());
for(String arg : args) {
commandArray.add(arg);
}
String[] command = commandArray.toArray(new String[0]);
+
ProcessBuilder pb = new ProcessBuilder( command );
if(working_directory != null) {
message = "working directory: "+working_directory;
@@ -624,18 +980,150 @@ public class AllInOneLauncher extends Cl
while ((line = ebr.readLine()) != null) {
System.err.println(line);
}
+
mh.frameworkTrace(cid, mid, "exit");
}
- private void launch_remote() {
+ private void addArg(ArrayList<String> cmdLine, String arg) {
String mid = "launch_remote";
mh.frameworkTrace(cid, mid, "enter");
- String message = "type "+allInOneType+" not supported";
- mh.error(cid, mid, message);
+ cmdLine.add(arg);
+ mh.frameworkDebug(cid, mid, arg);
+ mh.frameworkTrace(cid, mid, "exit");
+ }
+
+ private String getProcessExecutable() {
+ String mid = "getProcessExecutable";
+ mh.frameworkTrace(cid, mid, "enter");
+ StringBuffer sb = new StringBuffer();
+ sb.append(System.getProperty("java.home")+File.separator+"bin"+File.separator+"java");
+ mh.frameworkTrace(cid, mid, "exit");
+ return sb.toString();
+ }
+
+ private String getProcessExecutableArgs() {
+ String mid = "getProcessExecutableArgs";
+ mh.frameworkTrace(cid, mid, "enter");
+ StringBuffer sb = new StringBuffer();
+ if(process_jvm_args != null) {
+ sb.append(process_jvm_args);
+ sb.append(" ");
+ }
+ sb.append("-classpath");
+ sb.append(" ");
+ sb.append(classpath);
+ sb.append(" ");
+ sb.append(this.getClass().getCanonicalName());
+ sb.append(" ");
+ boolean skipNext = false;
+ for(String arg : args) {
+ if(skipNext) {
+ skipNext = false;
+ }
+ else if(arg.trim().equalsIgnoreCase("--"+UiOption.AllInOne.pname())) {
+ skipNext = true;
+ sb.append(arg);
+ sb.append(" ");
+ sb.append(local);
+ sb.append(" ");
+ }
+ else if(arg.trim().equalsIgnoreCase("--"+UiOption.DriverClasspath.pname())) {
+ skipNext = true;
+ }
+ else if(arg.trim().equalsIgnoreCase("--"+UiOption.ProcessClasspath.pname())) {
+ skipNext = true;
+ }
+ else if(arg.trim().equalsIgnoreCase("--"+UiOption.Classpath.pname())) {
+ skipNext = true;
+ }
+ else if(arg.trim().equalsIgnoreCase("--"+UiOption.DriverEnvironment.pname())) {
+ skipNext = true;
+ }
+ else if(arg.trim().equalsIgnoreCase("--"+UiOption.ProcessEnvironment.pname())) {
+ skipNext = true;
+ }
+ else if(arg.trim().equalsIgnoreCase("--"+UiOption.Environment.pname())) {
+ skipNext = true;
+ }
+ else {
+ sb.append(arg);
+ sb.append(" ");
+ }
+ }
+ mh.frameworkTrace(cid, mid, "exit");
+ return sb.toString();
+ }
+
+ private void launch_remote() throws Exception {
+ String mid = "launch_remote";
+ mh.frameworkTrace(cid, mid, "enter");
+ ArrayList<String> cmdLine = new ArrayList<String>();
+ addArg(cmdLine, "--"+UiOption.ProcessExecutable.pname());
+ addArg(cmdLine, getProcessExecutable());
+ addArg(cmdLine, "--"+UiOption.ProcessExecutableArgs.pname());
+ addArg(cmdLine, getProcessExecutableArgs());
+ addArg(cmdLine, "--"+UiOption.SchedulingClass.pname());
+ addArg(cmdLine, scheduling_class);
+ if(attach_console != null) {
+ addArg(cmdLine, "--"+UiOption.ProcessAttachConsole.pname());
+ addArg(cmdLine, attach_console);
+ }
+ if(environment != null) {
+ addArg(cmdLine, "--"+UiOption.Environment.pname());
+ addArg(cmdLine, environment);
+ }
+ if(process_memory_size != null) {
+ addArg(cmdLine, "--"+UiOption.ProcessMemorySize.pname());
+ addArg(cmdLine, process_memory_size);
+ }
+ if(log_directory != null) {
+ addArg(cmdLine, "--"+UiOption.LogDirectory.pname());
+ addArg(cmdLine, log_directory);
+ }
+ if(working_directory != null) {
+ addArg(cmdLine, "--"+UiOption.WorkingDirectory.pname());
+ addArg(cmdLine, working_directory);
+ }
+ if(description != null) {
+ addArg(cmdLine, "--"+UiOption.Description.pname());
+ addArg(cmdLine, description);
+ }
+ if(wait_for_completion) {
+ addArg(cmdLine, "--"+UiOption.WaitForCompletion.pname());
+ addArg(cmdLine, "true");
+ }
+ if(cancel_on_interrupt) {
+ addArg(cmdLine, "--"+UiOption.CancelOnInterrupt.pname());
+ addArg(cmdLine, "true");
+ }
+ String[] argList = cmdLine.toArray(new String[0]);
+ DuccManagedReservationSubmit ds = new DuccManagedReservationSubmit(argList);
+ boolean rc = ds.execute();
+
+ String dt = "Managed Reservation";
+ if ( rc ) {
+ // Fetch the Ducc ID
+ System.out.println(dt+" "+ds.getDuccId()+" submitted.");
+ int code = 0;
+ if(ds.waitForCompletion()) {
+ code = ds.getReturnCode();
+ }
+ if ( code == 1000 ) {
+ System.out.println(dt + ": no return code.");
+ } else {
+ System.out.println(dt+" return code: "+code);
+ }
+ System.exit(0);
+ } else {
+ System.out.println("Could not submit "+dt);
+ System.exit(1);
+ }
+
+ mh.frameworkDebug(cid, mid, "rc="+rc);
mh.frameworkTrace(cid, mid, "exit");
}
- private void launch() throws IOException {
+ private void launch() throws Exception {
String mid = "launch";
mh.frameworkTrace(cid, mid, "enter");
if(allInOneType.equalsIgnoreCase(local)) {
@@ -651,7 +1139,7 @@ public class AllInOneLauncher extends Cl
mh.frameworkTrace(cid, mid, "exit");
}
- public void go() throws MissingArgumentException, IllegalArgumentException, IOException {
+ public void go() throws Exception {
String mid = "go";
mh.frameworkTrace(cid, mid, "enter");
examine();
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/CasGenerator.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/CasGenerator.java?rev=1468197&r1=1468196&r2=1468197&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/CasGenerator.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/CasGenerator.java Mon Apr 15 19:20:24 2013
@@ -112,7 +112,7 @@ public class CasGenerator {
cr_fid = cr.getProcessingResourceMetaData().getFsIndexes();
initTotal();
mh.frameworkInfo(cid, mid, "total:"+getTotal());
- mh.info("total:"+getTotal());
+ mh.frameworkInfo("total:"+getTotal());
mh.frameworkTrace(cid, mid, "exit");
}