UNPKG

665 BJavaScriptView Raw
1var Stream = require('stream').Stream;
2
3function EngineStream(socket) {
4 var stream = new Stream();
5 stream.readable = stream.writable = true;
6
7 socket.on("error", stream.emit.bind(stream, "error"))
8 socket.on("open", stream.emit.bind(stream, "connect"))
9 socket.on("close", stream.emit.bind(stream, "close"))
10
11 // forward data
12 socket.on("message", stream.emit.bind(stream, "data"))
13
14 // forwarding write
15 stream.write = socket.write.bind(socket)
16
17 // forward end and destroy
18 stream.end = stream.destroy = socket.close.bind(socket)
19
20 stream.transport = socket.transport
21
22 return stream
23}
24
25module.exports = EngineStream
26