}
File indir = new File(argv[0]);
File outdir = new File(argv[1]);
- process(indir, "", outdir);
+ if (!indir.isDirectory()) {
+ process(new File(indir.getParent()), indir.getName(), outdir);
+ } else {
+ process(indir, "", outdir);
+ }
}
private static void process(File indir, String suffix, File outdir) throws Throwable {
- File f = new File(indir.getAbsolutePath()+suffix);
+ File f = new File(indir.getAbsolutePath()+File.separatorChar+suffix);
+ //System.out.println(f+" "+indir + " " + suffix + " " + outdir);
if (!f.exists()) return;
if (f.isDirectory()) {
for (String s : f.list())
return;
}
if (f.getPath().endsWith(".wix")) {
- System.out.println();
String out = "== " + suffix + " ";
while(out.length() < 75) out+="=";
System.out.println(ANSI.yellow(out));
+ //System.out.println();
+ String outPath = outdir.getAbsolutePath()+File.separatorChar+suffix;
+ outPath = outPath.substring(0, outPath.length()-".wix".length())+".html";
+ if (new File(outPath).exists() && new File(outPath).lastModified() > f.lastModified()) return;
Class.forName("Main").
getMethod("main", new Class[] { String[].class }).
invoke(null, new Object[] { new String[] { f.getAbsolutePath() } });
- String outPath = outdir.getAbsolutePath()+suffix;
- outPath = outPath.substring(0, outPath.length()-".wix".length())+".html";
new File(new File(outPath).getParent()).mkdirs();
PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(outPath+"+")));
pw.println(ret);
}
}
new File(outPath+"+").renameTo(dest);
+ if (dest.lastModified() <= f.lastModified())
+ dest.setLastModified(f.lastModified()+1);
}
}