comparison src/luan/modules/http/Http.luan @ 1578:c922446f53aa

immutable threading
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 08 Feb 2021 14:16:19 -0700
parents 153ea3b7afaf
children fa066aaa068c
comparison
equal deleted inserted replaced
1577:60e5c324adf9 1578:c922446f53aa
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 ipairs = Luan.ipairs or error() 4 local ipairs = Luan.ipairs or error()
5 local pairs = Luan.pairs or error() 5 local pairs = Luan.pairs or error()
6 local type = Luan.type or error() 6 local type = Luan.type or error()
7 local set_metatable = Luan.set_metatable or error()
8 local get_local_cloned = Luan.get_local_cloned or error()
9 local set_local_cloned = Luan.set_local_cloned or error()
10 local get_local_only = Luan.get_local_only or error()
11 local set_local_only = Luan.set_local_only or error()
12 local raw_set = Luan.raw_set or error()
7 local Io = require "luan:Io.luan" 13 local Io = require "luan:Io.luan"
8 local Html = require "luan:Html.luan" 14 local Html = require "luan:Html.luan"
9 local Table = require "luan:Table.luan" 15 local Table = require "luan:Table.luan"
10 local clear = Table.clear or error() 16 local clear = Table.clear or error()
11 local java_to_table_deep = Table.java_to_table_deep or error() 17 local java_to_table_deep = Table.java_to_table_deep or error()
27 local Logging = require "luan:logging/Logging.luan" 33 local Logging = require "luan:logging/Logging.luan"
28 local logger = Logging.logger "Http" 34 local logger = Logging.logger "Http"
29 35
30 36
31 local Http = {} 37 local Http = {}
38 local mt = {}
39 function mt.__index(tbl,key)
40 if key=="error_priority" then
41 return get_local_cloned(tbl,key)
42 elseif key=="request" or key=="response" then
43 return get_local_only(tbl,key)
44 else
45 return nil
46 end
47 end
48 function mt.__new_index(tbl,key,value)
49 if key=="error_priority" then
50 set_local_cloned(tbl,key,value)
51 elseif key=="request" or key=="response" then
52 set_local_only(tbl,key,value)
53 else
54 raw_set(tbl,key,value)
55 end
56 end
57 set_metatable(Http,mt)
32 58
33 local old_java_to_table_shallow = Table.java_to_table_shallow or error() 59 local old_java_to_table_shallow = Table.java_to_table_shallow or error()
34 60
35 local function java_to_table_shallow(obj) 61 local function java_to_table_shallow(obj)
36 if type(obj)=="java" and obj.instanceof(Request.MultipartFile) then 62 if type(obj)=="java" and obj.instanceof(Request.MultipartFile) then