comparison src/luan/lib/HttpLib.java @ 157:1de3e4a6e82d

remove LuanJavaFunction.RTN_NUMBER_ARRAY; add request.java and response.java; convert java Object[] members to List; let LuanState.eval() take env; improve web_run.luan; rename LuanParser.JspExpressions to TemplateExpressions and add TemplateStmt; git-svn-id: https://luan-java.googlecode.com/svn/trunk@158 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Wed, 18 Jun 2014 21:07:11 +0000
parents 05f8c21160ef
children
comparison
equal deleted inserted replaced
156:925ba2d59b9d 157:1de3e4a6e82d
92 this.response = response; 92 this.response = response;
93 } 93 }
94 94
95 private LuanTable requestTable() throws NoSuchMethodException { 95 private LuanTable requestTable() throws NoSuchMethodException {
96 LuanTable req = new LuanTable(); 96 LuanTable req = new LuanTable();
97 req.put("java",request);
97 req.put( "get_attribute", new LuanJavaFunction(HttpServletRequest.class.getMethod("getAttribute",String.class),request) ); 98 req.put( "get_attribute", new LuanJavaFunction(HttpServletRequest.class.getMethod("getAttribute",String.class),request) );
98 req.put( "set_attribute", new LuanJavaFunction(HttpServletRequest.class.getMethod("setAttribute",String.class,Object.class),request) ); 99 req.put( "set_attribute", new LuanJavaFunction(HttpServletRequest.class.getMethod("setAttribute",String.class,Object.class),request) );
99 req.put( "get_parameter", new LuanJavaFunction(HttpServletRequest.class.getMethod("getParameter",String.class),request) ); 100 req.put( "get_parameter", new LuanJavaFunction(HttpServletRequest.class.getMethod("getParameter",String.class),request) );
100 req.put( "get_parameter_values", new LuanJavaFunction(HttpServletRequest.class.getMethod("getParameterValues",String.class),request) ); 101 req.put( "get_parameter_values", new LuanJavaFunction(HttpServletRequest.class.getMethod("getParameterValues",String.class),request) );
101 req.put( "get_header", new LuanJavaFunction(HttpServletRequest.class.getMethod("getHeader",String.class),request) ); 102 req.put( "get_header", new LuanJavaFunction(HttpServletRequest.class.getMethod("getHeader",String.class),request) );
110 return req; 111 return req;
111 } 112 }
112 113
113 private LuanTable responseTable() throws NoSuchMethodException { 114 private LuanTable responseTable() throws NoSuchMethodException {
114 LuanTable resp = new LuanTable(); 115 LuanTable resp = new LuanTable();
116 resp.put("java",response);
115 add( resp, "send_redirect", String.class ); 117 add( resp, "send_redirect", String.class );
116 add( resp, "send_error", Integer.TYPE, String.class ); 118 add( resp, "send_error", Integer.TYPE, String.class );
117 resp.put( "contains_header", new LuanJavaFunction(HttpServletResponse.class.getMethod("containsHeader",String.class),response) ); 119 resp.put( "contains_header", new LuanJavaFunction(HttpServletResponse.class.getMethod("containsHeader",String.class),response) );
118 resp.put( "set_header", new LuanJavaFunction(HttpServletResponse.class.getMethod("setHeader",String.class,String.class),response) ); 120 resp.put( "set_header", new LuanJavaFunction(HttpServletResponse.class.getMethod("setHeader",String.class,String.class),response) );
119 add( resp, "set_cookie", String.class, String.class, Boolean.TYPE, String.class ); 121 add( resp, "set_cookie", String.class, String.class, Boolean.TYPE, String.class );