package com.erggroup.mass.ant.condition; import java.io.File; import org.apache.tools.ant.*; import org.apache.tools.ant.taskdefs.*; import org.apache.tools.ant.taskdefs.condition.Condition; import org.apache.tools.ant.taskdefs.condition.Contains; public class JBossActiveCondition extends ProjectComponent implements Condition { private String project; public void setProject(String value) { this.project = value; } // This method evaluates the condition public boolean eval() { if (project == null) { throw new BuildException("value attribute is not set"); } String p = getProject().replaceProperties(project); File f = new File(p+"/log/server.log"); LoadFile loadFile = new LoadFile(); loadFile.setProject(getProject()); loadFile.setSrcFile(f); loadFile.setProperty("jboss.server.log"); loadFile.execute(); Contains containsCondition = new Contains(); containsCondition.setString("${jboss.server.log}"); containsCondition.setSubstring("Shutdown complete"); return containsCondition.eval(); } }