Files: 3d425eb5e60c74393a2ae33abb20a5df794791b3 / port.js
477 bytesRaw
1 | const EventEmitter = require('events') |
2 | |
3 | module.exports = class Port extends EventEmitter { |
4 | constructor (name) { |
5 | super() |
6 | this.name = name |
7 | this.connected = false |
8 | } |
9 | |
10 | connect (destPort) { |
11 | if (!this.connected) { |
12 | this.destPort = destPort |
13 | destPort.destPort = this |
14 | this.connected = true |
15 | } |
16 | } |
17 | |
18 | async send (message) { |
19 | message._hops++ |
20 | this.destPort.recieve(message) |
21 | } |
22 | |
23 | recieve (message) { |
24 | this.emit('message', message) |
25 | } |
26 | } |
27 |
Built with git-ssb-web