| 159 | */ |
| 160 | |
| 161 | export class Logger implements ILogger { |
| 162 | _logger: WinstonLogger; |
| 163 | _verbosity: Verbosity; |
| 164 | constructor(logger: WinstonLogger) { |
| 165 | this._logger = logger; |
| 166 | |
| 167 | switch (logger.level) { |
| 168 | case 'info': |
| 169 | this._verbosity = Verbosity.INFO; |
| 170 | break; |
| 171 | case 'warn': |
| 172 | this._verbosity = Verbosity.WARN; |
| 173 | break; |
| 174 | case 'error': |
| 175 | this._verbosity = Verbosity.ERROR; |
| 176 | break; |
| 177 | case 'debug': |
| 178 | default: |
| 179 | this._verbosity = Verbosity.DEBUG; |
| 180 | } |
| 181 | } |
| 182 | getVerbosity(): Verbosity { |
| 183 | return this._verbosity; |
| 184 | } |
| 185 | setVerbosity(verbosity: Verbosity): void { |
| 186 | switch (verbosity) { |
| 187 | case Verbosity.INFO: |
| 188 | this._logger.level = 'info'; |
| 189 | break; |
| 190 | case Verbosity.WARN: |
| 191 | this._logger.level = 'warn'; |
| 192 | break; |
| 193 | case Verbosity.ERROR: |
| 194 | this._logger.level = 'error'; |
| 195 | break; |
| 196 | case Verbosity.DEBUG: |
| 197 | this._logger.level = 'debug'; |
| 198 | break; |
| 199 | default: |
| 200 | throw new Error(`Unexpected verbosity, "${verbosity}".`); |
| 201 | } |
| 202 | this._verbosity = verbosity; |
| 203 | } |
| 204 | debug(msg: string): void { |
| 205 | this._logger.debug(msg); |
| 206 | } |
| 207 | info(msg: string): void { |
| 208 | this._logger.info(msg); |
| 209 | } |
| 210 | warn(msg: string): void { |
| 211 | this._logger.warn(msg); |
| 212 | } |
| 213 | error(msg: string): void { |
| 214 | this._logger.error(msg); |
| 215 | } |
| 216 | } |
nothing calls this directly
no outgoing calls
no test coverage detected