GSA-423 Better reporting for errors in QScript.script().
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@5276 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
d97ed3e080
commit
290afae047
|
|
@ -218,4 +218,10 @@ public class UserException extends ReviewedStingException {
|
||||||
super(String.format("Walker %s is not available: %s", walkerName, message));
|
super(String.format("Walker %s is not available: %s", walkerName, message));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class CannotExecuteQScript extends UserException {
|
||||||
|
public CannotExecuteQScript(String message, Exception e) {
|
||||||
|
super(String.format("Unable to execute QScript: " + message), e);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ import org.broadinstitute.sting.queue.util._
|
||||||
import org.broadinstitute.sting.queue.engine.{QGraphSettings, QGraph}
|
import org.broadinstitute.sting.queue.engine.{QGraphSettings, QGraph}
|
||||||
import collection.JavaConversions._
|
import collection.JavaConversions._
|
||||||
import org.broadinstitute.sting.utils.classloader.PluginManager
|
import org.broadinstitute.sting.utils.classloader.PluginManager
|
||||||
|
import org.broadinstitute.sting.utils.exceptions.UserException
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Entry point of Queue. Compiles and runs QScripts passed in to the command line.
|
* Entry point of Queue. Compiles and runs QScripts passed in to the command line.
|
||||||
|
|
@ -43,7 +44,12 @@ class QCommandLine extends CommandLineProgram with Logging {
|
||||||
for (script <- pluginManager.createAllTypes()) {
|
for (script <- pluginManager.createAllTypes()) {
|
||||||
logger.info("Scripting " + pluginManager.getName(script.getClass.asSubclass(classOf[QScript])))
|
logger.info("Scripting " + pluginManager.getName(script.getClass.asSubclass(classOf[QScript])))
|
||||||
loadArgumentsIntoObject(script)
|
loadArgumentsIntoObject(script)
|
||||||
script.script
|
try {
|
||||||
|
script.script
|
||||||
|
} catch {
|
||||||
|
case e: Exception =>
|
||||||
|
throw new UserException.CannotExecuteQScript(script.getClass.getSimpleName + ".script() threw the following exception: " + e, e)
|
||||||
|
}
|
||||||
script.functions.foreach(qGraph.add(_))
|
script.functions.foreach(qGraph.add(_))
|
||||||
logger.info("Added " + script.functions.size + " functions")
|
logger.info("Added " + script.functions.size + " functions")
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue