in src/main/java/org/apache/cxf/cwiki/SiteExporter.java [641:681]
String loadPageBinaryData(AbstractPage p, String href, String type, boolean auth) throws Exception {
String filename = href.substring(href.lastIndexOf('/') + 1);
filename = filename.replace(' ', '_');
if (filename.indexOf('?') != -1) {
filename = filename.substring(0, filename.indexOf('?'));
}
String dirName = p.getPath();
dirName = dirName.substring(0, dirName.lastIndexOf(".")) + "." + type;
File file = new File(outputDir, dirName);
if (!file.exists()) {
callSvn("mkdir", file.getAbsolutePath());
file.mkdirs();
}
file = new File(file, filename);
boolean exists = file.exists();
FileOutputStream out = new FileOutputStream(file);
if (auth) {
if (href.indexOf('?') != -1) {
href += "&os_authType=basic";
} else {
href += "?os_authType=basic";
}
}
URL url = new URL(HOST + href);
URLConnection con = url.openConnection();
if (auth) {
con.addRequestProperty("Authorization", getBasicAuthHeader());
}
InputStream ins = con.getInputStream();
IOUtils.copy(ins, out);
out.close();
ins.close();
if (!exists) {
callSvn("add", file.getAbsolutePath());
svnCommitMessage.append("Added: " + dirName + "/" + file.getName() + "\n");
} else {
svnCommitMessage.append("Modified: " + dirName + "/" + file.getName() + "\n");
}
return file.getName();
}