5d60da72830f38204ef06a0f695b943ce345aa5b
[debian/jabref.git] / PrepRelease.java
1 import java.io.*;
2
3 /**
4  * This little program traverses the file structure from the current
5  * directory, and removes all CVS directories and all files starting
6  * with ".#" or ending with "~", e.g. backup files. This is to make the
7  * source tree ready for release.
8  */
9 public class PrepRelease {
10
11     public static void main(String[] args) {
12         File start = new File(System.getProperty("user.dir"));
13         System.out.println(start.getPath());
14         traverse(start);
15     }
16
17     private static void traverse(File f) {
18         //System.out.println(f.getPath());
19         File[] fs = f.listFiles();
20         for (int i=0; i<fs.length; i++) {
21             if (fs[i].getName().equals("CVS") || fs[i].getName().equalsIgnoreCase(".svn")) {
22                 delete(fs[i]);
23                 fs[i].delete();
24                 System.out.println("Deleting dir: "+fs[i].getPath());
25             } else if (fs[i].isDirectory()) {
26                 traverse(fs[i]);
27             } else if (fs[i].getName().endsWith("~") ||
28                        fs[i].getName().startsWith(".#")) {
29                 System.out.println("Deleting: "+fs[i].getPath());
30                 fs[i].delete();
31             }
32         }
33     }
34
35     private static void delete(File f) {
36         File[] fs = f.listFiles();
37         for (int i=0; i<fs.length; i++) {
38             System.out.println("Deleting: "+fs[i].getPath());
39             if (fs[i].isDirectory())
40                 delete(fs[i]);
41             fs[i].delete();
42         }
43     }
44 }