ag-grid
Version:
Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
44 lines (32 loc) • 1.02 kB
text/typescript
import {GridOptionsWrapper} from "./gridOptionsWrapper";
import {Bean} from "./context/context";
import {Qualifier} from "./context/context";
('loggerFactory')
export class LoggerFactory {
private logging: boolean;
private setBeans( ('gridOptionsWrapper') gridOptionsWrapper: GridOptionsWrapper): void {
this.logging = gridOptionsWrapper.isDebug();
}
public create(name: string) {
return new Logger(name, this.isLogging.bind(this));
}
public isLogging(): boolean {
return this.logging;
}
}
export class Logger {
private isLoggingFunc: ()=>boolean;
private name: string;
constructor(name: string, isLoggingFunc: ()=>boolean) {
this.name = name;
this.isLoggingFunc = isLoggingFunc;
}
public isLogging(): boolean {
return this.isLoggingFunc();
}
public log(message: string) {
if (this.isLoggingFunc()) {
console.log('ag-Grid.' + this.name + ': ' + message);
}
}
}