Created
May 7, 2012 15:29
-
-
Save jasonhofer/2628415 to your computer and use it in GitHub Desktop.
Apache Ant Javascript snippets
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// Ant Javascript snippets | |
// | |
import(java.io.File); | |
importClass(Packages.org.apache.tools.ant.types.Environment); | |
importClass(Packages.org.apache.tools.ant.taskdefs.Echo); | |
String.prototype.trim = function() { | |
return this.replace(/^\s+|\s+$/g, ""); | |
}; | |
var local = project.createTask("local"); | |
local.setName("result"); | |
local.execute(); | |
// Casting null to string returns the actual word "null" | |
var cmd = elements.get("command") || ""; | |
var dir = elements.get("dir") || project.getBaseDir(); | |
var foe = elements.get("failonerror") || "true"; | |
var msg = ("" + self.text).trim() || (elements.get("message") || "").trim(); | |
var exec = project.createTask("exec"); | |
exec.setExecutable(project.getProperty("the.executable")); | |
exec.setDir(new File(dir)); | |
exec.setFailonerror(project.toBoolean(foe)); | |
if ("" != cmd) { | |
exec.createArg().setValue(cmd); | |
} | |
if ("" != msg) { | |
exec.createArg().setValue("--message"); | |
exec.createArg().setValue(msg); | |
} | |
var filesets = elements.get("fileset"); // returns null or a Java ArrayList | |
if (null !== filesets && filesets.size() > 0) { | |
// code that depends on at least one fileset being given | |
} | |
var apply = project.createTask("apply"); | |
if (null !== filesets) { | |
for each(var fileset in filesets.toArray()) { | |
apply.addFileset(fileset); | |
} | |
} | |
var env = new Environment.Variable(); | |
env.setKey("MY_ENV_VAR"); | |
env.setValue(project.getProperty("me.env.var.value")); | |
exec.addEnv(env); | |
var e = project.createTask("echo"); | |
var lvl = new Echo.EchoLevel(); | |
lvl.setValue(attributes.get("level")); | |
e.setLevel(lvl); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment