1 package org.apidesign.infra.ant;
4 import java.io.FileWriter;
5 import java.io.IOException;
6 import java.util.Map.Entry;
7 import org.apache.tools.ant.BuildException;
8 import org.apache.tools.ant.Task;
9 import org.apache.tools.ant.types.FileSet;
10 import org.apache.tools.ant.types.FilterSet;
12 public class GrepCopy extends Task {
13 private GrepFilter filter = new GrepFilter();
19 public FileSet createFileSet() {
20 return filter.createFileSet();
23 public void setTarget(File dir) {
28 public void execute() throws BuildException {
29 filter.setProject(getProject());
31 FilterSet set = filter.createFilterSet();
33 for (Object object : set.getFilterHash().entrySet()) {
37 Entry en = (Entry) object;
38 File to = new File(dir, (String) en.getKey());
39 to.getParentFile().mkdirs();
40 w = new FileWriter(to);
41 w.write((String) en.getValue());
43 } catch (IOException ex) {
44 throw new BuildException(ex);