
org.ow2.bonita.ant.tasks.BonitaJava Maven / Gradle / Ivy
package org.ow2.bonita.ant.tasks;
import java.io.File;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.taskdefs.Java;
import org.apache.tools.ant.types.CommandlineJava;
import org.apache.tools.ant.types.Environment;
import org.ow2.bonita.facade.Context;
import org.ow2.bonita.util.BonitaConstants;
import org.ow2.bonita.util.ExceptionManager;
import org.ow2.bonita.util.Misc;
public class BonitaJava extends Java {
private String loginmode;
private String apitype;
private File jaas;
private File env;
private File log;
private File bar;
@Override
public void execute() {
if (bar == null) {
String message = ExceptionManager.getInstance().getFullMessage("bat_BJ_1");
throw new BuildException(message);
}
CommandlineJava java = getCommandLine();
java.createArgument().setValue("-bar=" + bar.getAbsolutePath());
Environment.Variable testVar = new Environment.Variable();
testVar.setKey(BonitaConstants.LOGIN_MODE_PROPERTY);
testVar.setValue(loginmode);
java.addSysproperty(testVar);
if (env != null) {
Environment.Variable var = new Environment.Variable();
var.setKey(BonitaConstants.ENVIRONMENT_PROPERTY);
var.setValue(env.getAbsolutePath());
java.addSysproperty(var);
}
if (jaas != null) {
Environment.Variable var = new Environment.Variable();
var.setKey(BonitaConstants.JAAS_PROPERTY);
var.setValue(jaas.getAbsolutePath());
java.addSysproperty(var);
}
if (log != null) {
Environment.Variable var = new Environment.Variable();
var.setKey(BonitaConstants.LOGGING_PROPERTY);
var.setValue(log.getAbsolutePath());
java.addSysproperty(var);
}
if (apitype != null) {
Environment.Variable var = new Environment.Variable();
var.setKey(BonitaConstants.API_TYPE_PROPERTY);
var.setValue(Misc.stringToEnum(Context.class, apitype).toString());
java.addSysproperty(var);
}
try {
super.execute();
} catch (Throwable t) {
t.printStackTrace();
log(Misc.getStackTraceFrom(t), Project.MSG_ERR);
}
}
public void setJaas(File jaas) {
this.jaas = jaas;
}
public void setEnv(File env) {
this.env = env;
}
public void setLog(File log) {
this.log = log;
}
public void setApitype(String apitype) {
this.apitype = apitype;
}
public void setLoginmode(String loginmode) {
this.loginmode = loginmode;
}
public void setBar(File bar) {
this.bar = bar;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy