Ensure there is a batch.

This commit is contained in:
Greg Burd 2018-01-24 16:11:44 -05:00
parent e2f45f82c9
commit f9b1563bdd

View file

@ -29,12 +29,13 @@ import net.helenus.core.UnitOfWork;
import net.helenus.support.HelenusException; import net.helenus.support.HelenusException;
public class BatchOperation extends Operation<Long> { public class BatchOperation extends Operation<Long> {
private BatchStatement batch = null; private final BatchStatement batch;
private List<AbstractOperation<?, ?>> operations = new ArrayList<AbstractOperation<?, ?>>(); private List<AbstractOperation<?, ?>> operations = new ArrayList<AbstractOperation<?, ?>>();
private boolean logged = true; private boolean logged = true;
public BatchOperation(AbstractSessionOperations sessionOperations) { public BatchOperation(AbstractSessionOperations sessionOperations) {
super(sessionOperations); super(sessionOperations);
batch = new BatchStatement();
} }
public void add(AbstractOperation<?, ?> operation) { public void add(AbstractOperation<?, ?> operation) {
@ -43,7 +44,6 @@ public class BatchOperation extends Operation<Long> {
@Override @Override
public BatchStatement buildStatement(boolean cached) { public BatchStatement buildStatement(boolean cached) {
batch = new BatchStatement();
batch.addAll( batch.addAll(
operations.stream().map(o -> o.buildStatement(cached)).collect(Collectors.toList())); operations.stream().map(o -> o.buildStatement(cached)).collect(Collectors.toList()));
batch.setConsistencyLevel(sessionOps.getDefaultConsistencyLevel()); batch.setConsistencyLevel(sessionOps.getDefaultConsistencyLevel());