Skip to content

Commit 61ad195

Browse files
author
Maple Buice
committed
Update tags to use ImportTag.parseTemplateAsNode
1 parent 12abbb9 commit 61ad195

2 files changed

Lines changed: 9 additions & 18 deletions

File tree

src/main/java/com/hubspot/jinjava/lib/tag/FromTag.java

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -85,25 +85,20 @@ public String interpret(TagNode tagNode, JinjavaInterpreter interpreter) {
8585
Map<String, String> imports = getImportMap(helper);
8686

8787
try {
88-
interpreter
89-
.getContext()
90-
.getCurrentPathStack()
91-
.push(templateFile, tagNode.getLineNumber(), tagNode.getStartPosition());
92-
93-
String template = interpreter.getResource(templateFile);
94-
Node node = interpreter.parse(template);
88+
Node node = ImportTag.parseTemplateAsNode(interpreter, templateFile);
9589

9690
JinjavaInterpreter child = interpreter
9791
.getConfig()
9892
.getInterpreterFactory()
9993
.newInstance(interpreter);
10094
child.getContext().put(Context.IMPORT_RESOURCE_PATH_KEY, templateFile);
95+
10196
JinjavaInterpreter.pushCurrent(child);
97+
10298
try {
10399
child.render(node);
104100
} finally {
105101
JinjavaInterpreter.popCurrent();
106-
interpreter.getContext().getCurrentPathStack().pop();
107102
}
108103

109104
interpreter.addAllChildErrors(templateFile, child.getErrorsCopy());
@@ -130,7 +125,8 @@ public String interpret(TagNode tagNode, JinjavaInterpreter interpreter) {
130125
);
131126
}
132127
} finally {
133-
interpreter.getContext().popFromStack();
128+
interpreter.getContext().getCurrentPathStack().pop();
129+
interpreter.getContext().getImportPathStack().pop();
134130
}
135131
}
136132

src/main/java/com/hubspot/jinjava/lib/tag/eager/EagerFromTag.java

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import com.hubspot.jinjava.lib.fn.eager.EagerMacroFunction;
1010
import com.hubspot.jinjava.lib.tag.DoTag;
1111
import com.hubspot.jinjava.lib.tag.FromTag;
12+
import com.hubspot.jinjava.lib.tag.ImportTag;
1213
import com.hubspot.jinjava.lib.tag.eager.importing.EagerImportingStrategyFactory;
1314
import com.hubspot.jinjava.tree.Node;
1415
import com.hubspot.jinjava.tree.parse.TagToken;
@@ -81,13 +82,7 @@ public String getEagerTagImage(TagToken tagToken, JinjavaInterpreter interpreter
8182
String templateFile = maybeTemplateFile.get();
8283
try {
8384
try {
84-
interpreter
85-
.getContext()
86-
.getCurrentPathStack()
87-
.push(templateFile, tagToken.getLineNumber(), tagToken.getStartPosition());
88-
89-
String template = interpreter.getResource(templateFile);
90-
Node node = interpreter.parse(template);
85+
Node node = ImportTag.parseTemplateAsNode(interpreter, templateFile);
9186

9287
JinjavaInterpreter child = interpreter
9388
.getConfig()
@@ -100,7 +95,6 @@ public String getEagerTagImage(TagToken tagToken, JinjavaInterpreter interpreter
10095
output = child.render(node);
10196
} finally {
10297
JinjavaInterpreter.popCurrent();
103-
interpreter.getContext().getCurrentPathStack().pop();
10498
}
10599

106100
interpreter.addAllChildErrors(templateFile, child.getErrorsCopy());
@@ -143,7 +137,8 @@ public String getEagerTagImage(TagToken tagToken, JinjavaInterpreter interpreter
143137
);
144138
}
145139
} finally {
146-
interpreter.getContext().popFromStack();
140+
interpreter.getContext().getCurrentPathStack().pop();
141+
interpreter.getContext().getImportPathStack().pop();
147142
}
148143
}
149144

0 commit comments

Comments
 (0)