|
1 | 1 | /*
|
2 |
| - * Copyright 2002-2017 the original author or authors. |
| 2 | + * Copyright 2002-2020 the original author or authors. |
3 | 3 | *
|
4 | 4 | * Licensed under the Apache License, Version 2.0 (the "License");
|
5 | 5 | * you may not use this file except in compliance with the License.
|
@@ -201,7 +201,12 @@ private static class Log4jLog implements Log, Serializable {
|
201 | 201 | private final ExtendedLogger logger;
|
202 | 202 |
|
203 | 203 | public Log4jLog(String name) {
|
204 |
| - this.logger = loggerContext.getLogger(name); |
| 204 | + LoggerContext context = loggerContext; |
| 205 | + if (context == null) { |
| 206 | + // Circular call in early-init scenario -> static field not initialized yet |
| 207 | + context = LogManager.getContext(Log4jLog.class.getClassLoader(), false); |
| 208 | + } |
| 209 | + this.logger = context.getLogger(name); |
205 | 210 | }
|
206 | 211 |
|
207 | 212 | @Override
|
@@ -324,92 +329,110 @@ public Slf4jLog(T logger) {
|
324 | 329 | this.logger = logger;
|
325 | 330 | }
|
326 | 331 |
|
| 332 | + @Override |
327 | 333 | public boolean isFatalEnabled() {
|
328 | 334 | return isErrorEnabled();
|
329 | 335 | }
|
330 | 336 |
|
| 337 | + @Override |
331 | 338 | public boolean isErrorEnabled() {
|
332 | 339 | return this.logger.isErrorEnabled();
|
333 | 340 | }
|
334 | 341 |
|
| 342 | + @Override |
335 | 343 | public boolean isWarnEnabled() {
|
336 | 344 | return this.logger.isWarnEnabled();
|
337 | 345 | }
|
338 | 346 |
|
| 347 | + @Override |
339 | 348 | public boolean isInfoEnabled() {
|
340 | 349 | return this.logger.isInfoEnabled();
|
341 | 350 | }
|
342 | 351 |
|
| 352 | + @Override |
343 | 353 | public boolean isDebugEnabled() {
|
344 | 354 | return this.logger.isDebugEnabled();
|
345 | 355 | }
|
346 | 356 |
|
| 357 | + @Override |
347 | 358 | public boolean isTraceEnabled() {
|
348 | 359 | return this.logger.isTraceEnabled();
|
349 | 360 | }
|
350 | 361 |
|
| 362 | + @Override |
351 | 363 | public void fatal(Object message) {
|
352 | 364 | error(message);
|
353 | 365 | }
|
354 | 366 |
|
| 367 | + @Override |
355 | 368 | public void fatal(Object message, Throwable exception) {
|
356 | 369 | error(message, exception);
|
357 | 370 | }
|
358 | 371 |
|
| 372 | + @Override |
359 | 373 | public void error(Object message) {
|
360 | 374 | if (message instanceof String || this.logger.isErrorEnabled()) {
|
361 | 375 | this.logger.error(String.valueOf(message));
|
362 | 376 | }
|
363 | 377 | }
|
364 | 378 |
|
| 379 | + @Override |
365 | 380 | public void error(Object message, Throwable exception) {
|
366 | 381 | if (message instanceof String || this.logger.isErrorEnabled()) {
|
367 | 382 | this.logger.error(String.valueOf(message), exception);
|
368 | 383 | }
|
369 | 384 | }
|
370 | 385 |
|
| 386 | + @Override |
371 | 387 | public void warn(Object message) {
|
372 | 388 | if (message instanceof String || this.logger.isWarnEnabled()) {
|
373 | 389 | this.logger.warn(String.valueOf(message));
|
374 | 390 | }
|
375 | 391 | }
|
376 | 392 |
|
| 393 | + @Override |
377 | 394 | public void warn(Object message, Throwable exception) {
|
378 | 395 | if (message instanceof String || this.logger.isWarnEnabled()) {
|
379 | 396 | this.logger.warn(String.valueOf(message), exception);
|
380 | 397 | }
|
381 | 398 | }
|
382 | 399 |
|
| 400 | + @Override |
383 | 401 | public void info(Object message) {
|
384 | 402 | if (message instanceof String || this.logger.isInfoEnabled()) {
|
385 | 403 | this.logger.info(String.valueOf(message));
|
386 | 404 | }
|
387 | 405 | }
|
388 | 406 |
|
| 407 | + @Override |
389 | 408 | public void info(Object message, Throwable exception) {
|
390 | 409 | if (message instanceof String || this.logger.isInfoEnabled()) {
|
391 | 410 | this.logger.info(String.valueOf(message), exception);
|
392 | 411 | }
|
393 | 412 | }
|
394 | 413 |
|
| 414 | + @Override |
395 | 415 | public void debug(Object message) {
|
396 | 416 | if (message instanceof String || this.logger.isDebugEnabled()) {
|
397 | 417 | this.logger.debug(String.valueOf(message));
|
398 | 418 | }
|
399 | 419 | }
|
400 | 420 |
|
| 421 | + @Override |
401 | 422 | public void debug(Object message, Throwable exception) {
|
402 | 423 | if (message instanceof String || this.logger.isDebugEnabled()) {
|
403 | 424 | this.logger.debug(String.valueOf(message), exception);
|
404 | 425 | }
|
405 | 426 | }
|
406 | 427 |
|
| 428 | + @Override |
407 | 429 | public void trace(Object message) {
|
408 | 430 | if (message instanceof String || this.logger.isTraceEnabled()) {
|
409 | 431 | this.logger.trace(String.valueOf(message));
|
410 | 432 | }
|
411 | 433 | }
|
412 | 434 |
|
| 435 | + @Override |
413 | 436 | public void trace(Object message, Throwable exception) {
|
414 | 437 | if (message instanceof String || this.logger.isTraceEnabled()) {
|
415 | 438 | this.logger.trace(String.valueOf(message), exception);
|
@@ -530,89 +553,107 @@ public JavaUtilLog(String name) {
|
530 | 553 | this.logger = java.util.logging.Logger.getLogger(name);
|
531 | 554 | }
|
532 | 555 |
|
| 556 | + @Override |
533 | 557 | public boolean isFatalEnabled() {
|
534 | 558 | return isErrorEnabled();
|
535 | 559 | }
|
536 | 560 |
|
| 561 | + @Override |
537 | 562 | public boolean isErrorEnabled() {
|
538 | 563 | return this.logger.isLoggable(java.util.logging.Level.SEVERE);
|
539 | 564 | }
|
540 | 565 |
|
| 566 | + @Override |
541 | 567 | public boolean isWarnEnabled() {
|
542 | 568 | return this.logger.isLoggable(java.util.logging.Level.WARNING);
|
543 | 569 | }
|
544 | 570 |
|
| 571 | + @Override |
545 | 572 | public boolean isInfoEnabled() {
|
546 | 573 | return this.logger.isLoggable(java.util.logging.Level.INFO);
|
547 | 574 | }
|
548 | 575 |
|
| 576 | + @Override |
549 | 577 | public boolean isDebugEnabled() {
|
550 | 578 | return this.logger.isLoggable(java.util.logging.Level.FINE);
|
551 | 579 | }
|
552 | 580 |
|
| 581 | + @Override |
553 | 582 | public boolean isTraceEnabled() {
|
554 | 583 | return this.logger.isLoggable(java.util.logging.Level.FINEST);
|
555 | 584 | }
|
556 | 585 |
|
| 586 | + @Override |
557 | 587 | public void fatal(Object message) {
|
558 | 588 | error(message);
|
559 | 589 | }
|
560 | 590 |
|
| 591 | + @Override |
561 | 592 | public void fatal(Object message, Throwable exception) {
|
562 | 593 | error(message, exception);
|
563 | 594 | }
|
564 | 595 |
|
| 596 | + @Override |
565 | 597 | public void error(Object message) {
|
566 | 598 | log(java.util.logging.Level.SEVERE, message, null);
|
567 | 599 | }
|
568 | 600 |
|
| 601 | + @Override |
569 | 602 | public void error(Object message, Throwable exception) {
|
570 | 603 | log(java.util.logging.Level.SEVERE, message, exception);
|
571 | 604 | }
|
572 | 605 |
|
| 606 | + @Override |
573 | 607 | public void warn(Object message) {
|
574 | 608 | log(java.util.logging.Level.WARNING, message, null);
|
575 | 609 | }
|
576 | 610 |
|
| 611 | + @Override |
577 | 612 | public void warn(Object message, Throwable exception) {
|
578 | 613 | log(java.util.logging.Level.WARNING, message, exception);
|
579 | 614 | }
|
580 | 615 |
|
| 616 | + @Override |
581 | 617 | public void info(Object message) {
|
582 | 618 | log(java.util.logging.Level.INFO, message, null);
|
583 | 619 | }
|
584 | 620 |
|
| 621 | + @Override |
585 | 622 | public void info(Object message, Throwable exception) {
|
586 | 623 | log(java.util.logging.Level.INFO, message, exception);
|
587 | 624 | }
|
588 | 625 |
|
| 626 | + @Override |
589 | 627 | public void debug(Object message) {
|
590 | 628 | log(java.util.logging.Level.FINE, message, null);
|
591 | 629 | }
|
592 | 630 |
|
| 631 | + @Override |
593 | 632 | public void debug(Object message, Throwable exception) {
|
594 | 633 | log(java.util.logging.Level.FINE, message, exception);
|
595 | 634 | }
|
596 | 635 |
|
| 636 | + @Override |
597 | 637 | public void trace(Object message) {
|
598 | 638 | log(java.util.logging.Level.FINEST, message, null);
|
599 | 639 | }
|
600 | 640 |
|
| 641 | + @Override |
601 | 642 | public void trace(Object message, Throwable exception) {
|
602 | 643 | log(java.util.logging.Level.FINEST, message, exception);
|
603 | 644 | }
|
604 | 645 |
|
605 | 646 | private void log(java.util.logging.Level level, Object message, Throwable exception) {
|
606 |
| - if (logger.isLoggable(level)) { |
| 647 | + if (this.logger.isLoggable(level)) { |
607 | 648 | LogRecord rec;
|
608 | 649 | if (message instanceof LogRecord) {
|
609 | 650 | rec = (LogRecord) message;
|
610 | 651 | }
|
611 | 652 | else {
|
612 | 653 | rec = new LocationResolvingLogRecord(level, String.valueOf(message));
|
613 | 654 | rec.setLoggerName(this.name);
|
614 |
| - rec.setResourceBundleName(logger.getResourceBundleName()); |
615 |
| - rec.setResourceBundle(logger.getResourceBundle()); |
| 655 | + rec.setResourceBundleName(this.logger.getResourceBundleName()); |
| 656 | + rec.setResourceBundle(this.logger.getResourceBundle()); |
616 | 657 | rec.setThrown(exception);
|
617 | 658 | }
|
618 | 659 | logger.log(rec);
|
|
0 commit comments