diff src/nabble/view/web/template/ServletNamespaceUtils.java @ 0:7ecd1a4ef557

add content
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 21 Mar 2019 19:15:52 -0600
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/nabble/view/web/template/ServletNamespaceUtils.java	Thu Mar 21 19:15:52 2019 -0600
@@ -0,0 +1,48 @@
+package nabble.view.web.template;
+
+import nabble.model.User;
+import nabble.model.Person;
+import nabble.naml.compiler.Interpreter;
+import nabble.naml.compiler.CommandSpec;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+
+public class ServletNamespaceUtils extends NamespaceUtils {
+
+	public static final CommandSpec requiresServletNamespace = new CommandSpec.Builder()
+		.requiredInStack(ServletNamespace.class)
+		.build()
+	;
+
+	private ServletNamespace servletNamespace = null;
+
+	public ServletNamespace servletNamespace(Interpreter interp) {
+//		return interp.getFromStack(ServletNamespace.class);
+		if( servletNamespace == null )
+			servletNamespace = interp.getFromStack(ServletNamespace.class);
+		return servletNamespace;
+	}
+
+	public HttpServletRequest request(Interpreter interp) {
+		return servletNamespace(interp).request;
+	}
+
+	public HttpServletResponse response(Interpreter interp) {
+		return servletNamespace(interp).response;
+	}
+
+	public Person visitor(Interpreter interp)
+		throws ServletException
+	{
+		return servletNamespace(interp).getVisitor();
+	}
+
+	public User visitorUser(Interpreter interp)
+		throws ServletException
+	{
+		return servletNamespace(interp).getVisitorUser();
+	}
+}