in src/main/java/com/atlassian/uwc/exporters/MoinmoinExporter.java [120:188]
private void exportPages() {
if (this.running == false) return;
log.debug("src directory: " + getSrc());
log.debug("out directory: " + getOut());
File pagesDir = new File(getSrc());
String[] pages = pagesDir.list(new PageDirFileFilter());
String current = null;
Map<String, String> usernames = getUserNameInfo(getSrc() + File.separator + ".." );
Map<String, String> orignames = getOrigNameInfo(getSrc() + File.separator + ".." );
for (int i = 0; i < pages.length; i++) {
if (!pages[i].startsWith(BADCONTENT) && !pages[i].startsWith(CATEGORY) ) { //ignore BADCONTENT page
log.debug("page: " + pages[i]);
if (exportHistory()) {
final String pagedir = getSrc() + File.separator + pages[i];
final String revisiondir = pagedir + File.separator + REVISIONS;
log.debug("revision dir: " + revisiondir );
String[] revisions = new File(revisiondir).list();
if (revisions == null) {
log.error("Revisions directory was null. Skipping.");
continue;
}
Map<Integer, RevInfo> revmap = readRevisionsInfo(pagedir, usernames, orignames);
for (String revision : revisions) {
if (!revision.matches("\\d+")) continue; //ignore non-numbers
int num = Integer.parseInt(revision);
try {
File srcfile = new File(getSrc() + File.separator + pages[i] +
File.separator + REVISIONS + File.separator + revision);
File outfile = new File(getOut() + File.separator + pages[i] + "-" + num + EXTENSION);
copyFile(srcfile,outfile);
//addTimestampData(outfile, new Date(srcfile.lastModified()));
addRevData(outfile, revmap.get(num));
addTitleData(outfile, pages[i]);
} catch (FileNotFoundException e) {
log.info("Page \"" + pages[i] + "\" has been deleted and will be ignored.");
} catch (Exception e) {
e.printStackTrace();
}
}
}
else { //only export current
current = getCurrentRevision(getSrc() + File.separator + pages[i]);
log.debug(pages[i] + "\ncurrent revision: " + current);
if (current != null) {
try {
File srcfile = new File(getSrc() + File.separator + pages[i] +
File.separator + REVISIONS + File.separator + current);
File outfile = new File(getOut() + File.separator + pages[i] + EXTENSION);
copyFile(srcfile, outfile);
addTitleData(outfile, pages[i]);
} catch (FileNotFoundException e) {
log.info("Page \"" + pages[i] + "\" has been deleted and will be ignored.");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
}