tsbase
Version:
Base class libraries for TypeScript
35 lines • 1.07 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Logger = void 0;
var Observable_1 = require("../../Patterns/Observable/Observable");
var Logger = /** @class */ (function () {
function Logger() {
/**
* All logs collected during the current application lifecycle
*/
this.LogEntries = new Array();
/**
* Observable that is published to upon logging a new entry
*/
this.EntryLogged = new Observable_1.Observable();
}
Object.defineProperty(Logger, "Instance", {
get: function () {
return this.instance || (this.instance = new Logger());
},
enumerable: false,
configurable: true
});
/**
* Log a new entry
* @param entry
*/
Logger.prototype.Log = function (entry) {
Logger.Instance.LogEntries.push(entry);
Logger.Instance.EntryLogged.Publish(entry);
};
Logger.instance = null;
return Logger;
}());
exports.Logger = Logger;
//# sourceMappingURL=Logger.js.map