Methods Summary |
---|
private void | buildProperty(java.lang.String propName, java.lang.String propValue)
properties.put(propName, propValue);
|
public ParamSet | createParam()
ParamSet param = new ParamSet();
params.addElement(param);
return param;
|
public void | execute()
if (subTarget == null) {
throw new BuildException("Attribute target is required.", getLocation());
}
executeParameters(0);
|
private void | executeAntTask()
/* if (callee == null) { */
callee = (Ant) getProject().createTask("ant");
callee.setOwningTarget(getOwningTarget());
callee.setTaskName(getTaskName());
callee.init();
/* } */
callee.setAntfile(getProject().getProperty("ant.file"));
callee.setTarget(subTarget);
callee.setInheritAll(inheritAll);
callee.setInheritRefs(inheritRefs);
Enumeration keys = properties.keys();
while (keys.hasMoreElements()) {
String key = (String) keys.nextElement();
String val = (String) properties.get(key);
Property prop = callee.createProperty();
prop.setName(key);
prop.setValue(val);
}
callee.execute();
System.gc();
System.gc();
System.gc();
|
private void | executeForkedAntTask()
/* if (callee2 == null) { */
callee2 = (Java) getProject().createTask("java");
callee2.setOwningTarget(getOwningTarget());
callee2.setTaskName(getTaskName());
callee2.setLocation(getLocation());
callee2.setClassname("org.apache.tools.ant.Main");
callee2.setAppend(true);
callee2.setFork(true);
callee2.createJvmarg().setValue("-Xbootclasspath/p:" + System.getProperty("sun.boot.class.path"));
/* } */
String systemClassPath = System.getProperty("java.class.path");
callee2.setClasspath(new Path(getProject(), systemClassPath));
String args = "-buildfile " + properties.get("file");
Commandline.Argument arguments = callee2.createArg();
arguments.setLine(args);
if (verbose) {
callee2.createArg().setValue("-verbose");
}
callee2.createArg().setValue(subTarget);
if (callee2.executeJava() != 0) {
throw new BuildException("Execution of ANT Task failed");
}
|
private void | executeParameters(int paramNumber)This method is used to recursively iterate through
each parameter set.
It ends up being something like:
for( i=0; i< params[0].size ; i++ )
for( j=0; j < params[1].size ; j++ )
for( k=0; k < params[2].size ; k++ )
executeTarget( params[0][i], params[1][j] , params[2][k] ) ;
if (paramNumber == params.size()) {
executeTarget();
} else {
ParamSet paramSet = (ParamSet) params.elementAt(paramNumber);
Enumeration values = paramSet.getValues(getProject());
while (values.hasMoreElements()) {
String val = (String) values.nextElement();
buildProperty(paramSet.getName(), val);
executeParameters(paramNumber + 1);
}
}
|
private void | executeTarget()
if (subTarget == null) {
throw new BuildException("Attribute target is required.",
getLocation());
}
if(fork) {
executeForkedAntTask();
} else {
executeAntTask();
}
|
public void | init()
|
public void | setFork(boolean f)If true, forks the ant invocation.
fork = f;
|
public void | setInheritAll(boolean inherit)If true, pass all properties to the new Ant project.
Defaults to true.
inheritAll = inherit;
|
public void | setInheritRefs(boolean inheritRefs)If true, pass all references to the new Ant project.
Defaults to false
this.inheritRefs = inheritRefs;
|
public void | setTarget(java.lang.String target)Target to execute, required.
subTarget = target;
|
public void | setVerbose(boolean verbose)Enable verbose output when signing
; optional: default false
this.verbose = verbose;
|