Interface TaskWrapper
public interface TaskWrapper
A 
TaskWrapper is a facility to wrap Runnable background tasks before they are passed to the
Executor. Use-cases include injection of thread-local context variables, or more fine-granular error
handling.
All sub-queries sent by the federation engine that make use of the concurrency infrastructure (e.g.
ControlledWorkerScheduler) are passing this wrapper.
The concrete implementation can be configured using FedXConfig.withTaskWrapper(TaskWrapper).
- Author:
 - Andreas Schwarte
 - See Also:
 
- 
Method Summary
 
- 
Method Details
- 
wrap
Wrap the givenRunnableand add custom logic.Use cases include injection of state into the thread-local context, or more fine granular error handling.
Note that when modifying state in
ThreadLocalit must be reset properly in a try/finally block.- Parameters:
 runnable- the task as generated by the FedX engine- Returns:
 - the wrapped 
Runnable 
 - 
wrap
Wrap the givenCallableand add custom logic.Use cases include injection of state into the thread-local context, or more fine granular error handling.
Note that when modifying state in
ThreadLocalit must be reset properly in a try/finally block.- Parameters:
 callable- the task as generated by the FedX engine- Returns:
 - the wrapped 
Callable 
 
 -