JBoss.orgCommunity Documentation
The batching API, introduced in JBoss Cache 3.x, is intended as a mechanism to batch the way calls are replicated independent of JTA transactions.
This is useful when you want to batch up replication calls within a scope finer than that of any ongoing JTA transactions.
To use batching, you need to enable invocation batching in your cache configuration, either on the Configuration
object:
Configuration.setInvocationBatchingEnabled(true);
or in your XML file:
<invocationBatching enabled="true"/>
By default, invocation batching is disabled. Note that you do not have to have a transaction manager defined to use batching.
Once you have configured your cache to use batching, you use it by calling startBatch()
and endBatch()
on Cache
. E.g.,
Cache cache = getCache();
// not using a batch
cache.put("/a", "key", "value"); // will replicate immediately
// using a batch
cache.startBatch();
cache.put("/a", "key", "value");
cache.put("/b", "key", "value");
cache.put("/c", "key", "value");
cache.endBatch(true); // This will now replicate the modifications since the batch was started.
cache.startBatch();
cache.put("/a", "key", "value");
cache.put("/b", "key", "value");
cache.put("/c", "key", "value");
cache.endBatch(false); // This will "discard" changes made in the batch