UNPKG

monaco-editor-core

Version:
89 lines 3.07 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ let globalObservableLogger; export function addLogger(logger) { if (!globalObservableLogger) { globalObservableLogger = logger; } else if (globalObservableLogger instanceof ComposedLogger) { globalObservableLogger.loggers.push(logger); } else { globalObservableLogger = new ComposedLogger([globalObservableLogger, logger]); } } export function getLogger() { return globalObservableLogger; } let globalObservableLoggerFn = undefined; export function setLogObservableFn(fn) { globalObservableLoggerFn = fn; } class ComposedLogger { constructor(loggers) { this.loggers = loggers; } handleObservableCreated(observable, location) { for (const logger of this.loggers) { logger.handleObservableCreated(observable, location); } } handleOnListenerCountChanged(observable, newCount) { for (const logger of this.loggers) { logger.handleOnListenerCountChanged(observable, newCount); } } handleObservableUpdated(observable, info) { for (const logger of this.loggers) { logger.handleObservableUpdated(observable, info); } } handleAutorunCreated(autorun, location) { for (const logger of this.loggers) { logger.handleAutorunCreated(autorun, location); } } handleAutorunDisposed(autorun) { for (const logger of this.loggers) { logger.handleAutorunDisposed(autorun); } } handleAutorunDependencyChanged(autorun, observable, change) { for (const logger of this.loggers) { logger.handleAutorunDependencyChanged(autorun, observable, change); } } handleAutorunStarted(autorun) { for (const logger of this.loggers) { logger.handleAutorunStarted(autorun); } } handleAutorunFinished(autorun) { for (const logger of this.loggers) { logger.handleAutorunFinished(autorun); } } handleDerivedDependencyChanged(derived, observable, change) { for (const logger of this.loggers) { logger.handleDerivedDependencyChanged(derived, observable, change); } } handleDerivedCleared(observable) { for (const logger of this.loggers) { logger.handleDerivedCleared(observable); } } handleBeginTransaction(transaction) { for (const logger of this.loggers) { logger.handleBeginTransaction(transaction); } } handleEndTransaction(transaction) { for (const logger of this.loggers) { logger.handleEndTransaction(transaction); } } } //# sourceMappingURL=logging.js.map