Changes API: How to subscribe to bulk insert operation changes?
forBulkInsert
method can be used to acquire notifications for bulk insert operations.
Syntax
public IObservable<BulkInsertChangeNotification> forBulkInsert(UUID operationId);
Parameters
operationId
UUID
Id of bulk insert operation, generated when bulk insert operation is created.
ReturnValue
IObservable<BulkInsertChangeNotification >
Observable that allows to add subscriptions to notifications for bulk insert operation with given id.
Example
try (BulkInsertOperation bulkInsert = store.bulkInsert()) {
Closeable subscription = store
.changes()
.forBulkInsert(bulkInsert.getOperationId())
.subscribe(Observers.create(new Action1<BulkInsertChangeNotification>() {
@Override
public void apply(BulkInsertChangeNotification change) {
switch (change.getType()) {
case BULK_INSERT_STARTED:
// do something
break;
case BULK_INSERT_ENDED:
// do something
break;
case BULK_INSERT_ERROR:
// do something
break;
default:
break;
}
}
}));
try {
for (int i = 0; i < 1000 * 1000; i++) {
Employee employee = new Employee();
employee.setFirstName("FirstName #" + i);
employee.setLastName("LastName #" + i);
bulkInsert.store(employee);
}
} finally {
if (subscription != null) {
subscription.close();
}
}
}
Please enable JavaScript to view the comments powered by Disqus.