forked from baishancloud/lua-pipe
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy patht.lua
More file actions
27 lines (20 loc) · 726 Bytes
/
t.lua
File metadata and controls
27 lines (20 loc) · 726 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
local pipe_pipe = require("cpipe.pipe")
local pipe_reader = require("cpipe.reader")
local pipe_writer = require("cpipe.writer")
local headers = ngx.req.get_headers()
local size = tonumber(headers['Content-Length'])
local socket_reader = pipe_reader.make_socket_reader(ngx.socket.tcp(), size)
local writers = {}
for _, fpath in ipairs({
'/tmp/t1.out',
'/tmp/t2.out',
'/tmp/t3.out'}) do
local file_writer = pipe_writer.make_file_writer(fpath)
table.insert(writers, file_writer)
end
local cpipe = pipe_pipe:new({socket_reader}, writers)
local is_running = function() return true end
local rst, err_code, err_msg = cpipe:pipe(is_running)
if err_code ~= nil then
return nil, err_code, err_msg
end