Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | 4x 2x 2x 1x 2x 2x 3x 1x 1x 1x 3x 3x | import Service from './service.js'
export default class Controller {
constructor () {
this.service = new Service()
}
createClientStream () {
const { id, stream } = this.service.createClientStream()
const onClose = () => {
this.service.removeClientStream(id)
}
return {
stream, onClose
}
}
/** @param {string} fileName */
async getFileStream (fileName) {
return this.service.getFileStream(fileName)
}
async handleCommand ({ command }) {
const commands = {
'fx': () => this.service.appendFxStream(command),
'start': () => this.service.startStream(),
'stop': () => this.service.stopStream()
}
const exec = commands[command] || commands.fx
return await exec()
}
} |