1 | var Stream = require('stream').Stream;
|
2 |
|
3 | function 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 |
|
12 | socket.on("message", stream.emit.bind(stream, "data"))
|
13 |
|
14 |
|
15 | stream.write = socket.write.bind(socket)
|
16 |
|
17 |
|
18 | stream.end = stream.destroy = socket.close.bind(socket)
|
19 |
|
20 | stream.transport = socket.transport
|
21 |
|
22 | return stream
|
23 | }
|
24 |
|
25 | module.exports = EngineStream
|
26 |
|