CIB runshell-Beispiel: Aufruf der native CIB runshell aus Java für einen CIB merge-Mischlauf
package de.cib.sample.comod;
import de.cib.comod.RunshellProcess;
boolean doMergeRunshellProcess() {
// neuen Runshell-Prozess starten
String t_Workspace = new String("\home\user\");
// cibrshux ist die CIB runshell unter Linux/Unix
RunshellProcess runshell = new RunshellProcess("./bin/cibrshux");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"a./templates");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"q./Data");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"'l!merge.log'");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"iTest.rtf");
runshell.addArgument(RunshellProcess.COMMAND_MERGE +"'o!output.rtf'");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"s");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"-old-compare");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"dTest.csv");
runshell.addArgument(RunshellProcess.COMMAND_MERGE+"@1");
try
{
// Pfad zu den Libraries angeben und Prozess starten
runshell.executeAndWait(new File(t_Workspace));
}
catch(IOException io)
{
System.out.println("Beim Mischen mit CIB merge "+
"ist eine Exception aufgetreten.");
return false;
}
catch(InterruptedException inter)
{
System.out.println("Beim Mischen mit CIB merge "+
"ist eine Exception aufgetreten.");
return false;
}
// Fehlerbehandlung der CIB runshell
int error = cibRunShell.getExitCode();
if (error != 0) {
System.out.println("CIB merge-Fehler: " + error +
"bei der Ausführung von " + cibRunShell.getCommandLine() +
";");
return false;
}
return true;
}