summaryrefslogtreecommitdiff
path: root/module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2021-01-25 21:29:12 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2021-01-25 21:29:12 +0100
commit912bc8b903dfa6d438c2469ecdad35c181c71830 (patch)
tree1e6ee9fdcb2b9d488914b80623d68189867533bb /module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java
parent92b957036218c03a20ba35c19a70bdf5e2333fd3 (diff)
downloadrules-sandbox-912bc8b903dfa6d438c2469ecdad35c181c71830.tar.gz
rules-sandbox-912bc8b903dfa6d438c2469ecdad35c181c71830.tar.bz2
rules-sandbox-912bc8b903dfa6d438c2469ecdad35c181c71830.tar.xz
rules-sandbox-912bc8b903dfa6d438c2469ecdad35c181c71830.zip
Improving usability, massive refactoring.
* Moving all Drools code into their own modules. This fixes ri-engine to acme dependency. * Now they all inherit from their own parent, should be used by third party code too. * Separating acme planning code into its own module. * Splitting rules code from ri-engine into ri-base. ri-engine is now a pure launcher for modules. * Dumping kogito for the most part, but it seems like the planner still requires that.
Diffstat (limited to 'module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java')
-rw-r--r--module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java34
1 files changed, 3 insertions, 31 deletions
diff --git a/module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java b/module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java
index cc085c0..eafa6e4 100644
--- a/module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java
+++ b/module/ri-engine/src/main/java/io/trygvis/rules/engine/TemplateEngine.java
@@ -1,38 +1,10 @@
package io.trygvis.rules.engine;
-import ch.qos.logback.core.util.FileUtil;
-import com.hubspot.jinjava.Jinjava;
-import org.apache.commons.io.FileUtils;
-
-import java.io.File;
import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
import java.util.Map;
-public class TemplateEngine {
- private final Jinjava jinjava = new Jinjava();
-
- private final File basedir;
-
- public TemplateEngine(File basedir) {
- this.basedir = basedir;
- }
-
- public void clean() {
- try {
- System.out.println("Cleaning gen!");
- FileUtils.deleteDirectory(basedir);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
+public interface TemplateEngine {
+ void clean();
- public void template(String name, String output, Map<String, Object> params) throws IOException {
- var template = Files.readString(Path.of("j2", name + ".j2"));
- String renderedTemplate = jinjava.render(template, params);
- var f = new File(basedir, output);
- FileUtil.createMissingParentDirectories(f);
- Files.writeString(f.toPath(), renderedTemplate);
- }
+ void template(String name, String output, Map<String, Object> params) throws IOException;
}