Mercurial Hosting > nabble
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(); + } +}