1.1 --- a/java/ant/src/org/apidesign/infra/ant/GrepCopy.java Sun Jul 06 00:31:01 2008 +0200
1.2 +++ b/java/ant/src/org/apidesign/infra/ant/GrepCopy.java Fri Apr 03 16:32:36 2020 +0200
1.3 @@ -3,6 +3,7 @@
1.4 import java.io.File;
1.5 import java.io.FileWriter;
1.6 import java.io.IOException;
1.7 +import java.net.URL;
1.8 import java.util.Map.Entry;
1.9 import org.apache.tools.ant.BuildException;
1.10 import org.apache.tools.ant.Task;
1.11 @@ -12,6 +13,7 @@
1.12 public class GrepCopy extends Task {
1.13 private GrepFilter filter = new GrepFilter();
1.14 private File dir;
1.15 + private URL url;
1.16
1.17 public GrepCopy() {
1.18 }
1.19 @@ -23,6 +25,10 @@
1.20 public void setTarget(File dir) {
1.21 this.dir = dir;
1.22 }
1.23 +
1.24 + public void setBaseURL(URL url) {
1.25 + this.url = url;
1.26 + }
1.27
1.28 @Override
1.29 public void execute() throws BuildException {
1.30 @@ -35,11 +41,24 @@
1.31 FileWriter w = null;
1.32 try {
1.33 Entry en = (Entry) object;
1.34 - File to = new File(dir, (String) en.getKey());
1.35 - to.getParentFile().mkdirs();
1.36 - w = new FileWriter(to);
1.37 - w.write((String) en.getValue());
1.38 - w.close();
1.39 + String key = (String)en.getKey();
1.40 + {
1.41 + File to = new File(dir, key);
1.42 + to.getParentFile().mkdirs();
1.43 + w = new FileWriter(to);
1.44 + w.write((String) en.getValue());
1.45 + w.close();
1.46 + }
1.47 +
1.48 + if (url != null) {
1.49 + URL u = filter.getPath(url, key);
1.50 + File to = new File(dir, key + ".url");
1.51 + to.getParentFile().mkdirs();
1.52 + w = new FileWriter(to);
1.53 + w.write(u.toExternalForm());
1.54 + w.close();
1.55 + }
1.56 +
1.57 } catch (IOException ex) {
1.58 throw new BuildException(ex);
1.59 }