https://github.com/socketcluster/eetase
EventEmitter to AsyncStreamEmitter converter.
https://github.com/socketcluster/eetase
Last synced: 12 months ago
JSON representation
EventEmitter to AsyncStreamEmitter converter.
- Host: GitHub
- URL: https://github.com/socketcluster/eetase
- Owner: SocketCluster
- License: mit
- Created: 2018-12-29T22:51:16.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-03-27T15:47:52.000Z (about 2 years ago)
- Last Synced: 2024-12-22T09:52:01.311Z (over 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 16.6 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# eetase
EventEmitter to AsyncStreamEmitter converter.
Allows an `EventEmitter` (https://nodejs.org/api/events.html#events_class_eventemitter) to be used as an `AsyncStreamEmitter` (https://github.com/SocketCluster/async-stream-emitter).
Keeps original `EventEmitter` functionality.
## Installation
```bash
npm install eetase
```
## Usage example
```js
const eetase = require('eetase');
const http = require('http');
// The Node.js HTTP server is an EventEmitter.
// Normally works using server.on('request', handler);
let server = http.createServer();
// Mutates the server instance but doesn't touch
// the instance's prototype.
eetase(server);
// ...
// The Node.js HTTP server now works as an
// AsyncStreamEmitter
(async () => {
// Use array destructuring to get the req object.
// This is needed because emitter.emit(eventName, ...)
// can have multiple arguments.
for await (let [req] of server.listener('request')) {
// ...
}
})();
```