Initial commit
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
package com.wisemapping.util;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.apache.velocity.VelocityContext;
|
||||
import org.apache.velocity.app.VelocityEngine;
|
||||
import org.apache.velocity.exception.VelocityException;
|
||||
|
||||
import java.io.StringWriter;
|
||||
import java.io.Writer;
|
||||
import java.util.Map;
|
||||
|
||||
public class VelocityEngineUtils {
|
||||
private static final Log logger = LogFactory.getLog(VelocityEngineUtils.class);
|
||||
|
||||
public static void mergeTemplate(
|
||||
VelocityEngine velocityEngine, String templateLocation,
|
||||
Map<String, Object> model, Writer writer
|
||||
) throws VelocityException {
|
||||
try {
|
||||
VelocityContext velocityContext = new VelocityContext(model);
|
||||
velocityEngine.mergeTemplate(templateLocation, "UTF-8", velocityContext, writer);
|
||||
} catch (RuntimeException ex) {
|
||||
throw ex;
|
||||
} catch (Exception ex) {
|
||||
logger.error("Why does VelocityEngine throw a generic checked exception, after all?", ex);
|
||||
throw new VelocityException(ex.toString());
|
||||
}
|
||||
}
|
||||
|
||||
public static String mergeTemplateIntoString(
|
||||
VelocityEngine velocityEngine, String templateLocation, Map<String, Object> model
|
||||
) throws VelocityException {
|
||||
StringWriter result = new StringWriter();
|
||||
mergeTemplate(velocityEngine, templateLocation, model, result);
|
||||
return result.toString();
|
||||
}
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
package com.wisemapping.util;
|
||||
|
||||
import org.apache.commons.collections.ExtendedProperties;
|
||||
import org.apache.velocity.app.VelocityEngine;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class VelocityEngineWrapper {
|
||||
private VelocityEngine velocityEngine;
|
||||
|
||||
public VelocityEngineWrapper() {
|
||||
ExtendedProperties extendedProperties = new ExtendedProperties();
|
||||
extendedProperties.setProperty("resource.loader", "class");
|
||||
extendedProperties.setProperty("class.resource.loader.class",
|
||||
"org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
|
||||
|
||||
this.velocityEngine = new VelocityEngine();
|
||||
velocityEngine.setExtendedProperties(extendedProperties);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public VelocityEngine getVelocityEngine() {
|
||||
return velocityEngine;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user