Gracefully handle disconnected frontends.

Signed-off-by: Akos Kitta <kittaakos@typefox.io>
This commit is contained in:
Akos Kitta
2019-11-12 10:24:53 +01:00
parent 2dc73eb3b5
commit df33c5689f
3 changed files with 27 additions and 3 deletions

View File

@@ -10,6 +10,9 @@ import { ToolOutputServiceServer } from '../common/protocol/tool-output-service'
@injectable()
export class BoardsServiceImpl implements BoardsService {
@inject(ILogger)
protected logger: ILogger;
@inject(ILogger)
@named('discovery')
protected discoveryLogger: ILogger;
@@ -95,9 +98,13 @@ export class BoardsServiceImpl implements BoardsService {
}
dispose(): void {
this.logger.info('>>> Disposing boards service...')
this.queue.pause();
this.queue.clear();
if (this.discoveryTimer !== undefined) {
clearInterval(this.discoveryTimer);
}
this.logger.info('<<< Disposed boards service.')
}
async getAttachedBoards(): Promise<{ boards: Board[] }> {