public class CacheMergeOperation extends CacheOperation implements BackupAwareOperation, TargetAware
SplitBrainMergePolicy.cacheService, dontCreateCacheRecordStoreIfNotExist, recordStore, tenantContext, wanEventPublishernameGENERIC_PARTITION_ID| Constructor and Description |
|---|
CacheMergeOperation() |
CacheMergeOperation(String name,
List<SplitBrainMergeTypes.CacheMergeTypes> mergingEntries,
SplitBrainMergePolicy<Data,SplitBrainMergeTypes.CacheMergeTypes> mergePolicy) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
beforeRunInternal()
Implementers can override this method to make a specific execution.
|
Operation |
getBackupOperation()
Creates the
BackupOperation responsible for making the backup. |
int |
getId()
Returns type identifier for this class.
|
Object |
getResponse()
Called if and only if
Operation.returnsResponse() returned true,
shortly after Operation.run() returns. |
protected void |
readInternal(ObjectDataInput in) |
protected boolean |
requiresExplicitServiceName()
Returns
true to force the explicit service name serialization
for this operation, false otherwise. |
void |
run()
Runs the operation.
|
void |
setTarget(Address address)
Provides the designated target member address to which the operation
will be sent.
|
boolean |
shouldBackup()
Checks if a backup needs to be made.
|
protected void |
writeInternal(ObjectDataOutput out) |
afterRun, beforeRun, dispose, getAsyncBackupCount, getFactoryId, getServiceName, getServiceNamespace, getSyncBackupCount, logError, onInvocationException, publishWanRemove, publishWanUpdate, publishWanUpdate, publishWanUpdategetName, toStringcall, executedLocally, getCallerAddress, getCallerUuid, getCallId, getCallTimeout, getConnection, getInvocationTime, getLogger, getNodeEngine, getOperationResponseHandler, getPartitionId, getReplicaIndex, getService, getWaitTimeout, isUrgent, onExecutionFailure, onSetCallId, readData, returnsResponse, sendResponse, setCallerUuid, setNodeEngine, setOperationResponseHandler, setPartitionId, setReplicaIndex, setService, setServiceName, setValidateTarget, setWaitTimeout, toString, validatesTarget, writeDataclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetAsyncBackupCount, getSyncBackupCountgetPartitionIdreadData, writeDatapublic CacheMergeOperation()
public CacheMergeOperation(String name, List<SplitBrainMergeTypes.CacheMergeTypes> mergingEntries, SplitBrainMergePolicy<Data,SplitBrainMergeTypes.CacheMergeTypes> mergePolicy)
protected void beforeRunInternal()
CacheOperationbeforeRunInternal in class CacheOperationpublic void run()
OperationOperation.run() or Operation.call() method should be implemented; not both.
Runs after wait-support, supposed to do actual operationrun in class OperationOperation.call()public Object getResponse()
OperationOperation.returnsResponse() returned true,
shortly after Operation.run() returns.getResponse in class Operationpublic boolean shouldBackup()
BackupAwareOperationshouldBackup in interface BackupAwareOperationpublic Operation getBackupOperation()
BackupAwareOperationBackupOperation responsible for making the backup.getBackupOperation in interface BackupAwareOperationBackupOperation responsible for making the backup.public void setTarget(Address address)
TargetAwaresetTarget will be invoked on each retry with the
current target member's Address as argument
address is provided as target address
setTarget in interface TargetAwareaddress - target member's addressprotected boolean requiresExplicitServiceName()
Operationtrue to force the explicit service name serialization
for this operation, false otherwise.
Usually, the method should be overridden if Operation.getServiceName() is
also overridden, but it was not overridden in the previous HZ version,
i.e. the service name was provided using an explicit external call to
Operation.setServiceName(java.lang.String). This mechanism is required to maintain the
backward compatibility of the serialized representation of the operation
since the service name is not serialized if it matches the one returned
by Operation.getServiceName().
requiresExplicitServiceName in class Operationprotected void writeInternal(ObjectDataOutput out) throws IOException
writeInternal in class AbstractNamedOperationIOExceptionprotected void readInternal(ObjectDataInput in) throws IOException
readInternal in class AbstractNamedOperationIOExceptionpublic int getId()
IdentifiedDataSerializablegetId in interface IdentifiedDataSerializableCopyright © 2021 Hazelcast, Inc.. All Rights Reserved.