Skip to content

Commit b97af32

Browse files
silvanocerzaAlberto Iannaccone
authored and
Alberto Iannaccone
committed
Fix backend logger bindings
1 parent ce2f1c2 commit b97af32

File tree

4 files changed

+26
-9
lines changed

4 files changed

+26
-9
lines changed

arduino-ide-extension/src/node/arduino-ide-backend-module.ts

+19-1
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,9 @@ import { PlotterBackendContribution } from './plotter/plotter-backend-contributi
8484
import { ArduinoLocalizationContribution } from './arduino-localization-contribution';
8585
import { LocalizationContribution } from '@theia/core/lib/node/i18n/localization-contribution';
8686
import { MonitorManagerProxyImpl } from './monitor-manager-proxy-impl';
87-
import { MonitorManager } from './monitor-manager';
87+
import { MonitorManager, MonitorManagerName } from './monitor-manager';
8888
import { MonitorManagerProxy, MonitorManagerProxyClient, MonitorManagerProxyPath } from '../common/protocol/monitor-service';
89+
import { MonitorServiceName } from './monitor-service';
8990

9091
export default new ContainerModule((bind, unbind, isBound, rebind) => {
9192
bind(BackendApplication).toSelf().inSingletonScope();
@@ -302,6 +303,23 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => {
302303
.inSingletonScope()
303304
.whenTargetNamed('config');
304305

306+
// Logger for the monitor manager and its services
307+
bind(ILogger)
308+
.toDynamicValue((ctx) => {
309+
const parentLogger = ctx.container.get<ILogger>(ILogger);
310+
return parentLogger.child(MonitorManagerName);
311+
})
312+
.inSingletonScope()
313+
.whenTargetNamed(MonitorManagerName);
314+
315+
bind(ILogger)
316+
.toDynamicValue((ctx) => {
317+
const parentLogger = ctx.container.get<ILogger>(ILogger);
318+
return parentLogger.child(MonitorServiceName);
319+
})
320+
.inSingletonScope()
321+
.whenTargetNamed(MonitorServiceName);
322+
305323
bind(DefaultGitInit).toSelf();
306324
rebind(GitInit).toService(DefaultGitInit);
307325

arduino-ide-extension/src/node/monitor-manager-proxy-impl.ts

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import { ILogger } from "@theia/core";
2-
import { inject, injectable, named } from "@theia/core/shared/inversify";
1+
import { inject, injectable } from "@theia/core/shared/inversify";
32
import { MonitorManagerProxy, MonitorManagerProxyClient, MonitorSettings, Status } from "../common/protocol";
43
import { Board, Port } from "../common/protocol";
54
import { MonitorManager } from "./monitor-manager";
@@ -9,10 +8,6 @@ export class MonitorManagerProxyImpl implements MonitorManagerProxy {
98
protected client: MonitorManagerProxyClient;
109

1110
constructor(
12-
@inject(ILogger)
13-
@named("monitor-manager-proxy")
14-
protected readonly logger: ILogger,
15-
1611
@inject(MonitorManager)
1712
protected readonly manager: MonitorManager,
1813
) {

arduino-ide-extension/src/node/monitor-manager.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ import { MonitorService } from "./monitor-service";
66

77
type MonitorID = string;
88

9+
export const MonitorManagerName = 'monitor-manager';
10+
911
@injectable()
1012
export class MonitorManager extends CoreClientAware {
1113
// Map of monitor services that manage the running pluggable monitors.
@@ -16,7 +18,7 @@ export class MonitorManager extends CoreClientAware {
1618

1719
constructor(
1820
@inject(ILogger)
19-
@named('monitor-manager')
21+
@named(MonitorManagerName)
2022
protected readonly logger: ILogger,
2123
) {
2224
super();

arduino-ide-extension/src/node/monitor-service.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import { WebSocketProvider } from "./web-socket/web-socket-provider";
88
import { Port as gRPCPort } from 'arduino-ide-extension/src/node/cli-protocol/cc/arduino/cli/commands/v1/port_pb'
99
import WebSocketProviderImpl from "./web-socket/web-socket-provider-impl";
1010

11+
export const MonitorServiceName = 'monitor-service';
12+
1113
export class MonitorService extends CoreClientAware implements Disposable {
1214
// Bidirectional gRPC stream used to receive and send data from the running
1315
// pluggable monitor managed by the Arduino CLI.
@@ -39,7 +41,7 @@ export class MonitorService extends CoreClientAware implements Disposable {
3941

4042
constructor(
4143
@inject(ILogger)
42-
@named("monitor-service")
44+
@named(MonitorServiceName)
4345
protected readonly logger: ILogger,
4446

4547
private readonly board: Board,

0 commit comments

Comments
 (0)