1 18 19 package org.apache.tools.ant.types.optional; 20 21 import org.apache.tools.ant.filters.TokenFilter; 22 import java.io.File ; 23 import org.apache.tools.ant.BuildException; 24 import org.apache.tools.ant.Project; 25 import org.apache.tools.ant.types.Path; 26 import org.apache.tools.ant.types.Reference; 27 import org.apache.tools.ant.util.ScriptRunnerBase; 28 import org.apache.tools.ant.util.ScriptRunnerHelper; 29 30 41 public class ScriptFilter extends TokenFilter.ChainableReaderFilter { 42 43 private ScriptRunnerHelper helper = new ScriptRunnerHelper(); 44 45 46 private ScriptRunnerBase runner = null; 47 48 49 private String token; 50 51 55 public void setProject(Project project) { 56 super.setProject(project); 57 helper.setProjectComponent(this); 58 } 59 60 65 public void setLanguage(String language) { 66 helper.setLanguage(language); 67 } 68 69 74 private void init() throws BuildException { 75 if (runner != null) { 76 return; 77 } 78 runner = helper.getScriptRunner(); 79 } 80 81 86 public void setToken(String token) { 87 this.token = token; 88 } 89 90 95 public String getToken() { 96 return token; 97 } 98 99 107 public String filter(String token) { 108 init(); 109 setToken(token); 110 runner.executeScript("ant_filter"); 111 return getToken(); 112 } 113 114 119 public void setSrc(File file) { 120 helper.setSrc(file); 121 } 122 123 128 public void addText(String text) { 129 helper.addText(text); 130 } 131 132 137 public void setManager(String manager) { 138 helper.setManager(manager); 139 } 140 145 public void setClasspath(Path classpath) { 146 helper.setClasspath(classpath); 147 } 148 149 154 public Path createClasspath() { 155 return helper.createClasspath(); 156 } 157 158 164 public void setClasspathRef(Reference r) { 165 helper.setClasspathRef(r); 166 } 167 168 } 169 | Popular Tags |