in src/main/java/org/apache/cxf/cwiki/SiteExporter.java [156:218]
public SiteExporter(String fileName, boolean force) throws Exception {
forceAll = force;
Properties props = new Properties();
props.load(new FileInputStream(fileName));
if (props.containsKey("spaceKey")) {
spaceKey = props.getProperty("spaceKey");
}
if (props.containsKey("pageCacheFile")) {
pageCacheFile = props.getProperty("pageCacheFile");
}
if (props.containsKey("templateName")) {
templateName = props.getProperty("templateName");
}
if (props.containsKey("outputDir")) {
outputDir = new File(rootOutputDir, props.getProperty("outputDir"));
}
if (props.containsKey("mainDivClass")) {
mainDivClass = props.getProperty("mainDivClass");
}
if (props.containsKey("breadCrumbRoot")) {
breadCrumbRoot = props.getProperty("breadCrumbRoot");
}
if (props.containsKey("globalPages")) {
String globals = props.getProperty("globalPages");
String[] pgs = globals.split(",");
globalPages.addAll(Arrays.asList(pgs));
}
props = new Properties();
String clzName = URLResourceLoader.class.getName();
props.put("resource.loader", "url");
props.put("url.resource.loader.class", clzName);
props.put("url.resource.loader.root", "");
VelocityEngine engine = new VelocityEngine();
engine.init(props);
URL url = ClassLoaderUtils.getResource(templateName, this.getClass());
if (url == null) {
File file = new File(templateName);
if (file.exists()) {
url = file.toURI().toURL();
} else {
//try relative to this cfg file
file = new File(fileName);
file = new File(file.getParentFile().toURI().resolve(templateName));
if (file.exists()) {
url = file.toURI().toURL();
}
}
}
if (url == null) {
File file = new File(fileName);
file = new File(file.getParentFile().toURI().resolve(templateName));
System.err.println("Could not find " + templateName + " " + fileName);
System.err.println(" " + file.toURI().toURL());
}
template = engine.getTemplate(url.toURI().toString());
outputDir.mkdirs();
}