@datastax/astra-db-ts
Version:
Data API TypeScript client
41 lines (40 loc) • 1.34 kB
JavaScript
;
// Copyright Datastax, Inc
// SPDX-License-Identifier: Apache-2.0
Object.defineProperty(exports, "__esModule", { value: true });
exports.HierarchicalLogger = void 0;
const internal_logger_js_1 = require("../../lib/logging/internal-logger.js");
class HierarchicalLogger {
constructor(parent, config) {
Object.defineProperty(this, "internal", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
this.internal = new internal_logger_js_1.InternalLogger(config, parent?.internal, console);
}
updateLoggingConfig(config) {
this.internal.updateLoggingConfig(internal_logger_js_1.InternalLogger.cfg.parse(config));
}
on(eventName, listener) {
this.internal.on(eventName, listener);
return () => {
this.off(eventName, listener);
};
}
off(eventName, listener) {
return this.internal.off(eventName, listener);
}
once(eventName, listener) {
const off = this.on(eventName, (event) => {
off();
listener(event);
});
return off;
}
removeAllListeners(eventName) {
return this.internal.removeAllListeners(eventName);
}
}
exports.HierarchicalLogger = HierarchicalLogger;