public class SimpleHibernateBatchOperationManager extends Object implements BatchOperationManager
WARNING: Methods in this batching manager may clear the current session!
Constructor and Description |
---|
SimpleHibernateBatchOperationManager(HibernateSessionManager sessionManager) |
Modifier and Type | Method and Description |
---|---|
<I,O> Iterable<O> |
applyInBatches(Iterable<I> input,
int expectedTotal,
Function<I,O> task)
Executes a task for each item in a collection in batches
|
<I,O> Iterable<O> |
applyInBatches(Iterable<I> input,
int batchSize,
int expectedTotal,
Function<I,O> task)
Executes a task for each item in a collection in batches with configurable batch size
|
<I,O> Iterable<O> |
applyInChunks(Iterable<I> input,
int chunkSize,
int sizeToCollect,
Function<List<I>,List<O>> task)
Processes a collection of items in chunks until a given number of processed items is reached, the processed items
are then returned.
|
<I,O> Iterable<O> |
performAsBatch(Iterable<I> input,
int expectedTotal,
com.google.common.base.Function<I,O> task)
Deprecated.
since 7.0.1. Use
applyInBatches(Iterable, int, Function) |
<I,O> Iterable<O> |
performAsBatch(Iterable<I> input,
int batchSize,
int expectedTotal,
com.google.common.base.Function<I,O> task)
Deprecated.
since 7.0.1. Use
applyInBatches(Iterable, int, int, Function) |
<I,O> Iterable<O> |
performInChunks(Iterable<I> input,
int chunkSize,
int sizeToCollect,
com.google.common.base.Function<List<I>,List<O>> task)
Deprecated.
since 7.0.1. Use
applyInChunks(Iterable, int, int, Function) |
public SimpleHibernateBatchOperationManager(HibernateSessionManager sessionManager)
@Deprecated public <I,O> Iterable<O> performAsBatch(Iterable<I> input, int batchSize, int expectedTotal, com.google.common.base.Function<I,O> task)
applyInBatches(Iterable, int, int, Function)
WARNING: This method will clear the current session! The session clearing will discard any unflushed or uncommitted changes made higher in the stack. Calls to this method should generally be done in a separate thread or otherwise outside the scope of a request.
performAsBatch
in interface BatchOperationManager
I
- input typeO
- output typeinput
- the items to processbatchSize
- the size of the batchexpectedTotal
- the expected number of items to processtask
- a function to process the itemspublic <I,O> Iterable<O> applyInBatches(Iterable<I> input, int batchSize, int expectedTotal, Function<I,O> task)
BatchOperationManager
applyInBatches
in interface BatchOperationManager
I
- input typeO
- output typeinput
- the items to processbatchSize
- the size of the batchexpectedTotal
- the expected number of items to processtask
- a function to process the items@Deprecated public <I,O> Iterable<O> performAsBatch(Iterable<I> input, int expectedTotal, com.google.common.base.Function<I,O> task)
applyInBatches(Iterable, int, Function)
WARNING: This method will clear the current session! The session clearing will discard any unflushed or uncommitted changes made higher in the stack. Calls to this method should generally be done in a separate thread or otherwise outside the scope of a request.
performAsBatch
in interface BatchOperationManager
I
- input typeO
- output typeinput
- the items to processexpectedTotal
- the expected number of items to processtask
- a function to process the itemspublic <I,O> Iterable<O> applyInBatches(Iterable<I> input, int expectedTotal, Function<I,O> task)
BatchOperationManager
applyInBatches
in interface BatchOperationManager
I
- input typeO
- output typeinput
- the items to processexpectedTotal
- the expected number of items to processtask
- a function to process the items@Deprecated public <I,O> Iterable<O> performInChunks(Iterable<I> input, int chunkSize, int sizeToCollect, com.google.common.base.Function<List<I>,List<O>> task)
applyInChunks(Iterable, int, int, Function)
This method does NOT perform batch operations in independent transactions. To do so, transactions will need to be
handled by the provided processing function. Alternatively, consider using BatchOperationManager.applyInBatches(Iterable, int, Function)
performInChunks
in interface BatchOperationManager
input
- the items to processchunkSize
- the size of the batchsizeToCollect
- the number of processed items to returntask
- a function to process the itemspublic <I,O> Iterable<O> applyInChunks(Iterable<I> input, int chunkSize, int sizeToCollect, Function<List<I>,List<O>> task)
BatchOperationManager
applyInChunks
in interface BatchOperationManager
input
- the items to processchunkSize
- the size of the batchsizeToCollect
- the number of processed items to returntask
- a function to process the itemsCopyright © 2003–2021 Atlassian. All rights reserved.