Mercurial Hosting > luan
comparison src/luan/modules/http/impl/Http.luan @ 1164:1f9d34a6f308
remove assertions
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Wed, 07 Feb 2018 17:36:38 -0700 |
parents | fef8f0742da9 |
children | 668f29bc52ea |
comparison
equal
deleted
inserted
replaced
1163:fef8f0742da9 | 1164:1f9d34a6f308 |
---|---|
1 java() | 1 java() |
2 local Luan = require "luan:Luan.luan" | 2 local Luan = require "luan:Luan.luan" |
3 local error = Luan.error | 3 local error = Luan.error |
4 local assert_string = Luan.assert_string or error() | |
5 local ipairs = Luan.ipairs or error() | 4 local ipairs = Luan.ipairs or error() |
6 local pairs = Luan.pairs or error() | 5 local pairs = Luan.pairs or error() |
7 local type = Luan.type or error() | 6 local type = Luan.type or error() |
8 local Io = require "luan:Io.luan" | 7 local Io = require "luan:Io.luan" |
9 local Html = require "luan:Html.luan" | 8 local Html = require "luan:Html.luan" |
13 local Package = require "luan:Package.luan" | 12 local Package = require "luan:Package.luan" |
14 local String = require "luan:String.luan" | 13 local String = require "luan:String.luan" |
15 local matches = String.matches or error() | 14 local matches = String.matches or error() |
16 local HttpServicer = require "java:luan.modules.http.impl.HttpServicer" | 15 local HttpServicer = require "java:luan.modules.http.impl.HttpServicer" |
17 local IoLuan = require "java:luan.modules.IoLuan" | 16 local IoLuan = require "java:luan.modules.IoLuan" |
18 local LuanJava = require "java:luan.Luan" | 17 local JavaLuan = require "java:luan.Luan" |
19 local Response = require "java:luan.webserver.Response" | 18 local Response = require "java:luan.webserver.Response" |
20 local ResponseOutputStream = require "java:luan.webserver.ResponseOutputStream" | 19 local ResponseOutputStream = require "java:luan.webserver.ResponseOutputStream" |
21 local Status = require "java:luan.webserver.Status" | 20 local Status = require "java:luan.webserver.Status" |
22 local OutputStreamWriter = require "java:java.io.OutputStreamWriter" | 21 local OutputStreamWriter = require "java:java.io.OutputStreamWriter" |
23 local HashMap = require "java:java.util.HashMap" | 22 local HashMap = require "java:java.util.HashMap" |
37 this.java = java | 36 this.java = java |
38 this.method = java.method or error() | 37 this.method = java.method or error() |
39 this.raw_path = java.rawPath or error() | 38 this.raw_path = java.rawPath or error() |
40 this.path = java.path or error() | 39 this.path = java.path or error() |
41 this.protocol = java.protocol or error() | 40 this.protocol = java.protocol or error() |
42 this.headers = LuanJava.toLuan(java.headers) | 41 this.headers = JavaLuan.toLuan(java.headers) |
43 this.parameters = LuanJava.toLuan(java.parameters) | 42 this.parameters = JavaLuan.toLuan(java.parameters) |
44 this.cookies = LuanJava.toLuan(java.cookies) | 43 this.cookies = JavaLuan.toLuan(java.cookies) |
45 end | 44 end |
46 this.scheme = "http" | 45 this.scheme = "http" |
47 | 46 |
48 function this.full_path() -- compatible with jetty | 47 function this.full_path() -- compatible with jetty |
49 return this.raw_path or this.path | 48 return this.raw_path or this.path |
95 | 94 |
96 function this.set_cookie(name,value,attributes) | 95 function this.set_cookie(name,value,attributes) |
97 attributes = attributes or {} | 96 attributes = attributes or {} |
98 local attrMap = HashMap.new() | 97 local attrMap = HashMap.new() |
99 for attr_name, attr_value in pairs(attributes) do | 98 for attr_name, attr_value in pairs(attributes) do |
100 assert_string(attr_name) | 99 type(attr_name)=="string" or "cookie attribute name must be string" |
101 assert_string(attr_value) | 100 type(attr_value)=="string" or "cookie attribute value must be string" |
102 attrMap.put(attr_name,attr_value) | 101 attrMap.put(attr_name,attr_value) |
103 end | 102 end |
104 this.java.setCookie(name,value,attrMap) | 103 this.java.setCookie(name,value,attrMap) |
105 end | 104 end |
106 | 105 |
135 function Http.finish() -- called only from java | 134 function Http.finish() -- called only from java |
136 local response = Http.response or error() | 135 local response = Http.response or error() |
137 local java = response.java or error() | 136 local java = response.java or error() |
138 java.status = Status.getStatus(response.status) | 137 java.status = Status.getStatus(response.status) |
139 for name, value in pairs(response.headers) do | 138 for name, value in pairs(response.headers) do |
140 assert_string(name) | 139 type(name)=="string" or "header name must be string" |
141 value = LuanJava.toJava(value) | 140 value = JavaLuan.toJava(value) |
142 java.headers.put(name,value) | 141 java.headers.put(name,value) |
143 end | 142 end |
144 response.writer and response.writer.close() | 143 response.writer and response.writer.close() |
145 return java | 144 return java |
146 end | 145 end |