public abstract class TaskUtils extends Object
NOTE: This class is intended for internal use by Spring's scheduler implementations. It is only public so that it may be accessed from implementations within other packages. It is not intended for general use and may change in the future.
Modifier and Type | Field and Description |
---|---|
static ErrorHandler |
LOG_AND_PROPAGATE_ERROR_HANDLER
An ErrorHandler strategy that will log at error level and then
re-throw the Exception.
|
static ErrorHandler |
LOG_AND_SUPPRESS_ERROR_HANDLER
An ErrorHandler strategy that will log the Exception but perform
no further handling.
|
Constructor and Description |
---|
TaskUtils() |
Modifier and Type | Method and Description |
---|---|
static DelegatingErrorHandlingRunnable |
decorateTaskWithErrorHandler(Runnable task,
ErrorHandler errorHandler,
boolean isRepeatingTask)
Decorates the task for error handling.
|
static ErrorHandler |
getDefaultErrorHandler(boolean isRepeatingTask)
Return the default
ErrorHandler implementation based on the boolean
value indicating whether the task will be repeating or not. |
public static final ErrorHandler LOG_AND_SUPPRESS_ERROR_HANDLER
public static final ErrorHandler LOG_AND_PROPAGATE_ERROR_HANDLER
public static DelegatingErrorHandlingRunnable decorateTaskWithErrorHandler(Runnable task, ErrorHandler errorHandler, boolean isRepeatingTask)
ErrorHandler
is not null, it will be used. Otherwise,
repeating tasks will have errors suppressed by default whereas
one-shot tasks will have errors propagated by default since those
errors may be expected through the returned Future
. In both
cases, the errors will be logged.public static ErrorHandler getDefaultErrorHandler(boolean isRepeatingTask)
ErrorHandler
implementation based on the boolean
value indicating whether the task will be repeating or not. For repeating tasks
it will suppress errors, but for one-time tasks it will propagate. In both
cases, the error will be logged.