Module io.github.bucket4j.core
Class BatchHelper<T,R,CT,CR>
- java.lang.Object
-
- io.github.bucket4j.util.concurrent.BatchHelper<T,R,CT,CR>
-
- Type Parameters:
T- Task typeR- Task result typeCT- Combined task typeCR- Combined task result
public class BatchHelper<T,R,CT,CR> extends Object
Helper class for batching
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBatchHelper.BatchFailedException
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <T,R,CT,CR>
BatchHelper<T,R,CT,CR>async(Function<List<T>,CT> taskCombiner, Function<CT,CompletableFuture<CR>> asyncCombinedTaskExecutor, Function<CR,List<R>> combinedResultSplitter)static <T,R,CT,CR>
BatchHelper<T,R,CT,CR>async(Function<List<T>,CT> taskCombiner, Function<CT,CompletableFuture<CR>> asyncCombinedTaskExecutor, Function<T,CompletableFuture<R>> asyncTaskExecutor, Function<CR,List<R>> combinedResultSplitter)Rexecute(T task)CompletableFuture<R>executeAsync(T task)static <T,R,CT,CR>
BatchHelper<T,R,CT,CR>sync(Function<List<T>,CT> taskCombiner, Function<CT,CR> combinedTaskExecutor, Function<CR,List<R>> combinedResultSplitter)static <T,R,CT,CR>
BatchHelper<T,R,CT,CR>sync(Function<List<T>,CT> taskCombiner, Function<CT,CR> combinedTaskExecutor, Function<T,R> taskExecutor, Function<CR,List<R>> combinedResultSplitter)
-
-
-
Method Detail
-
sync
public static <T,R,CT,CR> BatchHelper<T,R,CT,CR> sync(Function<List<T>,CT> taskCombiner, Function<CT,CR> combinedTaskExecutor, Function<T,R> taskExecutor, Function<CR,List<R>> combinedResultSplitter)
-
sync
public static <T,R,CT,CR> BatchHelper<T,R,CT,CR> sync(Function<List<T>,CT> taskCombiner, Function<CT,CR> combinedTaskExecutor, Function<CR,List<R>> combinedResultSplitter)
-
async
public static <T,R,CT,CR> BatchHelper<T,R,CT,CR> async(Function<List<T>,CT> taskCombiner, Function<CT,CompletableFuture<CR>> asyncCombinedTaskExecutor, Function<T,CompletableFuture<R>> asyncTaskExecutor, Function<CR,List<R>> combinedResultSplitter)
-
async
public static <T,R,CT,CR> BatchHelper<T,R,CT,CR> async(Function<List<T>,CT> taskCombiner, Function<CT,CompletableFuture<CR>> asyncCombinedTaskExecutor, Function<CR,List<R>> combinedResultSplitter)
-
executeAsync
public CompletableFuture<R> executeAsync(T task)
-
-