File tree Expand file tree Collapse file tree 2 files changed +20
-18
lines changed Expand file tree Collapse file tree 2 files changed +20
-18
lines changed Original file line number Diff line number Diff line change 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 ;
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ const requireDir = require('./helpers/require-dir');
33const path = require ( 'path' ) ;
44const request = require ( 'sonos-discovery/lib/helpers/request' ) ;
55const logger = require ( 'sonos-discovery/lib/helpers/logger' ) ;
6+ const HttpEventServer = require ( './helpers/http-event-server' ) ;
67
78function 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-
186169module . exports = HttpAPI ;
You can’t perform that action at this time.
0 commit comments