Skip to content

Commit 35ccda3

Browse files
timottojishi
authored andcommitted
refactoring
1 parent 5d9e535 commit 35ccda3

File tree

2 files changed

+20
-18
lines changed

2 files changed

+20
-18
lines changed

lib/helpers/http-event-server.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
function HttpEventServer() {
2+
let clients = [];
3+
4+
const removeClient = client => clients = clients.filter(value => value !== client);
5+
6+
this.addClient = res => clients.push(new HttpEventSource(res, removeClient));
7+
8+
this.sendEvent = event => clients.forEach(client => client.sendEvent(event))
9+
}
10+
11+
function HttpEventSource(res, done) {
12+
this.sendEvent = event => res.write('data: ' + event + '\n\n')
13+
14+
res.on('close', () => done(this))
15+
16+
res.setHeader('Content-Type', 'text/event-stream');
17+
}
18+
19+
module.exports = HttpEventServer;

lib/sonos-http-api.js

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ const requireDir = require('./helpers/require-dir');
33
const path = require('path');
44
const request = require('sonos-discovery/lib/helpers/request');
55
const logger = require('sonos-discovery/lib/helpers/logger');
6+
const HttpEventServer = require('./helpers/http-event-server');
67

78
function HttpAPI(discovery, settings) {
89

@@ -165,22 +166,4 @@ function HttpAPI(discovery, settings) {
165166

166167
}
167168

168-
function HttpEventServer() {
169-
let clients = [];
170-
171-
const removeClient = client => clients = clients.filter(value => value !== client);
172-
173-
this.addClient = res => clients.push(new HttpEventSource(res, removeClient));
174-
175-
this.sendEvent = event => clients.forEach(client => client.sendEvent(event))
176-
}
177-
178-
function HttpEventSource(res, done) {
179-
this.sendEvent = event => res.write('data: ' + event + '\n\n')
180-
181-
res.on('close', () => done(this))
182-
183-
res.setHeader('Content-Type', 'text/event-stream');
184-
}
185-
186169
module.exports = HttpAPI;

0 commit comments

Comments
 (0)