Merge branch '5.3.x'
This commit is contained in:
@@ -77,6 +77,23 @@ public class LoggingCacheErrorHandler implements CacheErrorHandler {
|
|||||||
this.logStackTraces = logStackTraces;
|
this.logStackTraces = logStackTraces;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a {@code LoggingCacheErrorHandler} that uses the supplied
|
||||||
|
* {@code loggerName} and {@code logStackTraces} flag.
|
||||||
|
* @param loggerName the name of the logger to use. The name will be passed
|
||||||
|
* to the underlying logger implementation through Commons Logging, getting
|
||||||
|
* interpreted as log category according to the logger's configuration.
|
||||||
|
* @param logStackTraces whether to log stack traces
|
||||||
|
* @since 5.3.24
|
||||||
|
* @see org.apache.commons.logging.LogFactory#getLog(String)
|
||||||
|
* @see java.util.logging.Logger#getLogger(String)
|
||||||
|
*/
|
||||||
|
public LoggingCacheErrorHandler(String loggerName, boolean logStackTraces) {
|
||||||
|
Assert.notNull(loggerName, "'loggerName' must not be null");
|
||||||
|
this.logger = LogFactory.getLog(loggerName);
|
||||||
|
this.logStackTraces = logStackTraces;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handleCacheGetError(RuntimeException exception, Cache cache, Object key) {
|
public void handleCacheGetError(RuntimeException exception, Cache cache, Object key) {
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ import org.junit.jupiter.api.Test;
|
|||||||
import org.springframework.cache.Cache;
|
import org.springframework.cache.Cache;
|
||||||
import org.springframework.cache.support.NoOpCache;
|
import org.springframework.cache.support.NoOpCache;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThatCode;
|
||||||
import static org.mockito.BDDMockito.given;
|
import static org.mockito.BDDMockito.given;
|
||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
@@ -84,4 +85,10 @@ class LoggingCacheErrorHandlerTests {
|
|||||||
verify(this.logger).warn("Cache 'NOOP' failed to get entry with key 'enigma'", exception);
|
verify(this.logger).warn("Cache 'NOOP' failed to get entry with key 'enigma'", exception);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void constructorWithLoggerName() {
|
||||||
|
assertThatCode(() -> new LoggingCacheErrorHandler("org.apache.commons.logging.Log", true))
|
||||||
|
.doesNotThrowAnyException();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user