Improve Serial Monitor Performances (#524)

Co-authored-by: Alberto Iannaccone <a.iannaccone@arduino.cc>
This commit is contained in:
Francesco Stasi
2021-10-05 18:40:53 +02:00
committed by Francesco Stasi
parent 7f8b227c39
commit 54a67fc67c
13 changed files with 868 additions and 461 deletions

View File

@@ -400,24 +400,14 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => {
bind(MonitorService)
.toDynamicValue((context) => {
const connection = context.container.get(WebSocketConnectionProvider);
const client = context.container.get(MonitorServiceClientImpl);
const client =
context.container.get<MonitorServiceClient>(MonitorServiceClient);
return connection.createProxy(MonitorServicePath, client);
})
.inSingletonScope();
bind(MonitorConnection).toSelf().inSingletonScope();
// Serial monitor service client to receive and delegate notifications from the backend.
bind(MonitorServiceClientImpl).toSelf().inSingletonScope();
bind(MonitorServiceClient)
.toDynamicValue((context) => {
const client = context.container.get(MonitorServiceClientImpl);
WebSocketConnectionProvider.createProxy(
context.container,
MonitorServicePath,
client
);
return client;
})
.inSingletonScope();
bind(MonitorServiceClient).to(MonitorServiceClientImpl).inSingletonScope();
bind(WorkspaceService).toSelf().inSingletonScope();
rebind(TheiaWorkspaceService).toService(WorkspaceService);