K - type of the store keyV - type of the store valueStore - type of the store in a partitionMergingItem - type of the merging itempublic abstract class AbstractMergeRunnable<K,V,Store,MergingItem extends MergingEntry<K,V>> extends Object implements Runnable
ICache, IMap
 and ReplicatedMap to provide a merge runnable
 for SplitBrainHandlerService.prepareMergeRunnable().| Modifier | Constructor and Description | 
|---|---|
protected  | 
AbstractMergeRunnable(String serviceName,
                     Collection<Store> mergingStores,
                     AbstractSplitBrainHandlerService<Store> splitBrainHandlerService,
                     NodeEngine nodeEngine)  | 
| Modifier and Type | Method and Description | 
|---|---|
protected abstract OperationFactory | 
createMergeOperationFactory(String dataStructureName,
                           SplitBrainMergePolicy<V,MergingItem> mergePolicy,
                           int[] partitions,
                           List<MergingItem>[] entries)
Returns an  
OperationFactory for SplitBrainMergePolicy,
 legacy merge policies don't use this method. | 
protected abstract int | 
getBatchSize(String dataStructureName)
This batch size can only be used with  
SplitBrainMergePolicy,
 legacy merge policies don't support batch data sending. | 
protected abstract String | 
getDataStructureName(Store store)  | 
protected abstract InMemoryFormat | 
getInMemoryFormat(String dataStructureName)  | 
protected abstract Object | 
getMergePolicy(String dataStructureName)  | 
protected abstract int | 
getPartitionId(Store store)  | 
protected InternalSerializationService | 
getSerializationService()  | 
protected abstract void | 
mergeStore(Store recordStore,
          BiConsumer<Integer,MergingItem> consumer)
Used to merge with  
SplitBrainMergePolicy. | 
protected abstract void | 
mergeStoreLegacy(Store recordStore,
                BiConsumer<Integer,Operation> consumer)
Used to merge with legacy merge policies. 
 | 
protected void | 
onMerge(String dataStructureName)  | 
protected void | 
onRunStart()  | 
void | 
run()  | 
protected Data | 
toData(Object object)  | 
protected Data | 
toHeapData(Object object)  | 
protected AbstractMergeRunnable(String serviceName, Collection<Store> mergingStores, AbstractSplitBrainHandlerService<Store> splitBrainHandlerService, NodeEngine nodeEngine)
protected void onRunStart()
protected InternalSerializationService getSerializationService()
protected void onMerge(String dataStructureName)
protected abstract void mergeStore(Store recordStore, BiConsumer<Integer,MergingItem> consumer)
SplitBrainMergePolicy.protected abstract void mergeStoreLegacy(Store recordStore, BiConsumer<Integer,Operation> consumer)
protected abstract int getBatchSize(String dataStructureName)
SplitBrainMergePolicy,
 legacy merge policies don't support batch data sending.MergePolicyConfigprotected abstract Object getMergePolicy(String dataStructureName)
SplitBrainMergePolicy or a legacy merge policyprotected abstract int getPartitionId(Store store)
protected abstract InMemoryFormat getInMemoryFormat(String dataStructureName)
protected abstract OperationFactory createMergeOperationFactory(String dataStructureName, SplitBrainMergePolicy<V,MergingItem> mergePolicy, int[] partitions, List<MergingItem>[] entries)
OperationFactory for SplitBrainMergePolicy,
 legacy merge policies don't use this method.Copyright © 2018 Hazelcast, Inc.. All Rights Reserved.