stream-recreate
Version:
Recreate stream on 'error' and/or 'end'
30 lines (19 loc) • 941 B
Markdown
# Recreate stream in case of error
To get started, install `stream-recreate` package via `npm`::
% npm install stream-recreate
The basic usage example is as follows::
var recreate = require('stream-recreate'),
websocket = require('websocket-stream');
var socket = recreate(function() {
return websocket('ws://localhost:3000');
});
socket.write('data');
Returned `socket` stream will recreate underlying `websocket` stream if `end` or
`error` event is occurred. It uses [backoff][backoff] module to control the
interval between attempts to recreate a stream.
To shutdown cleanly call `socket.end()`.
Note that we can call `socket.write()` right after the creation even if
underlying `websocket()` stream isn't open yet — `stream-recreate` returns
another stream which buffers writes and drains buffers on `open` of an
underlying stream.
[backoff]: https://github.com/MathieuTurcotte/node-backoff