MCPcopy Create free account
hub / github.com/Dart-Code/Dart-Code / EmittingLogger

Class EmittingLogger

src/shared/logging.ts:23–44  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

21}
22
23export class EmittingLogger implements Logger, IAmDisposable {
24 private readonly onLogEmitter = new LogEmitter();
25 public readonly onLog = (listener: (message: LogMessage) => void) => this.onLogEmitter.onLog(listener);
26
27 private log(message: string, severity: LogSeverity, category = LogCategory.General): void {
28 this.onLogEmitter.fire(new LogMessageImpl(message, severity, category));
29 }
30
31 public info(message: string, category?: LogCategory): void {
32 this.log(message, LogSeverity.Info, category);
33 }
34 public warn(errorOrMessage: any, category?: LogCategory): void {
35 this.log(errorString(errorOrMessage), LogSeverity.Warn, category);
36 }
37 public error(errorOrMessage: any, category?: LogCategory): void {
38 this.log(errorString(errorOrMessage), LogSeverity.Error, category);
39 }
40
41 public dispose(): void {
42 this.onLogEmitter.removeAllListeners();
43 }
44}
45
46class LogMessageImpl implements LogMessage {
47 constructor(

Callers

nothing calls this directly

Calls 1

onLogMethod · 0.80

Tested by

no test coverage detected