Class AbstractSpaceReplicationEntryEventHandler
java.lang.Object
com.gigaspaces.internal.cluster.node.handlers.AbstractReplicationEntryEventHandler
com.gigaspaces.internal.cluster.node.impl.handlers.AbstractSpaceReplicationEntryEventHandler
- All Implemented Interfaces:
IReplicationInEntryHandler,IReplicationInEvictEntryHandler
- Direct Known Subclasses:
ActiveActiveSpaceReplicationEntryEventHandler,PrimaryBackupSpaceReplicationEntryEventHandler
public abstract class AbstractSpaceReplicationEntryEventHandler
extends AbstractReplicationEntryEventHandler
implements IReplicationInEvictEntryHandler
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final SpaceEngineprotected final ReplicationInExceptionHandler -
Constructor Summary
ConstructorsConstructorDescriptionAbstractSpaceReplicationEntryEventHandler(SpaceEngine engine, ReplicationInExceptionHandler exceptionHandler) -
Method Summary
Modifier and TypeMethodDescriptionvoidchangeEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, String typeName, String uid, Object id, int routingHash, int version, int previousVersion, long timeToLive, Collection<SpaceEntryMutator> mutators, boolean isTransient, OperationID operationID, IEntryData previousEntry) protected voidchangeEntryInSpace(IReplicationInContext context, Transaction txn, String uid, int version, Collection<SpaceEntryMutator> mutators, boolean isTransient, OperationID operationID, IEntryData previousEntry, long timeToLive, boolean twoPhaseCommit, String typeName) protected ExtendedAnswerHolderexecuteUpdateOperation(IReplicationInContext context, Transaction txn, IEntryPacket entry, IEntryPacket previousEntry, boolean partialUpdate, boolean overrideVersion, long lease, boolean twoPhaseCommit, int updateModifiers) protected ConflictingOperationPolicyprotected booleanignoreOperation(boolean isTransient) voidinEvictEntry(IReplicationInContext context, String uid, boolean isTransient, OperationID operationID) protected voidpostChangeExecution(IReplicationInContext context, IEntryData previousEntryData, IEntryData modifiedEntryData) protected voidpostRemoveExecution(IReplicationInContext context, AnswerPacket aPacket) protected voidpostUpdateExecution(IReplicationInContext context, IEntryData previousEntryData, IEntryData currentEntryData) voidremoveEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry) voidremoveEntryByUid(IReplicationInContext context, Transaction transaction, boolean twoPhaseCommit, String uid, boolean isTransient, OperationID operationID, String typeName) protected voidremoveEntryFromSpace(IReplicationInContext context, Transaction txn, ITemplatePacket template, boolean twoPhaseCommit) protected abstract booleanshouldChangeEntryInSpace(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, String typeName, String uid, boolean isTransient, int version) protected abstract booleanshouldEvictEntryFromSpace(boolean isTransient) protected abstract booleanshouldRemoveEntryFromSpace(boolean isTransient) protected abstract booleanshouldUpdateEntryInSpace(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry) voidupdateEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry, IEntryPacket previousEntry, boolean partialUpdate, boolean overrideVersion) protected voidupdateEntryInSpace(IReplicationInContext context, Transaction txn, IEntryPacket entry, IEntryPacket previousEntry, boolean partialUpdate, boolean overrideVersion, long lease, boolean twoPhaseCommit) protected abstract ExtendedAnswerHolderupdateOrWrite(IReplicationInContext context, Transaction txn, IEntryPacket entry, long lease, int modifiers) voidwriteEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry) protected voidwriteEntryIntoSpace(IReplicationInContext context, Transaction txn, IEntryPacket entry, long lease, boolean twoPhaseCommit) Methods inherited from class com.gigaspaces.internal.cluster.node.handlers.AbstractReplicationEntryEventHandler
afterConsumption, beforeConsume, inChangeEntry, inRemoveEntry, inRemoveEntryByUID, inUpdateEntry, inWriteEntry
-
Field Details
-
_engine
-
_exceptionHandler
-
-
Constructor Details
-
AbstractSpaceReplicationEntryEventHandler
public AbstractSpaceReplicationEntryEventHandler(SpaceEngine engine, ReplicationInExceptionHandler exceptionHandler)
-
-
Method Details
-
getConflictingOperationPolicy
-
ignoreOperation
protected boolean ignoreOperation(boolean isTransient) -
writeEntry
public void writeEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry) throws Exception - Specified by:
writeEntryin classAbstractReplicationEntryEventHandler- Throws:
Exception
-
updateEntry
public void updateEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry, IEntryPacket previousEntry, boolean partialUpdate, boolean overrideVersion) throws Exception - Specified by:
updateEntryin classAbstractReplicationEntryEventHandler- Throws:
Exception
-
removeEntry
public void removeEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry) throws Exception - Specified by:
removeEntryin classAbstractReplicationEntryEventHandler- Throws:
Exception
-
removeEntryByUid
public void removeEntryByUid(IReplicationInContext context, Transaction transaction, boolean twoPhaseCommit, String uid, boolean isTransient, OperationID operationID, String typeName) throws Exception - Specified by:
removeEntryByUidin classAbstractReplicationEntryEventHandler- Throws:
Exception
-
changeEntry
public void changeEntry(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, String typeName, String uid, Object id, int routingHash, int version, int previousVersion, long timeToLive, Collection<SpaceEntryMutator> mutators, boolean isTransient, OperationID operationID, IEntryData previousEntry) throws Exception - Specified by:
changeEntryin classAbstractReplicationEntryEventHandler- Throws:
Exception
-
changeEntryInSpace
protected void changeEntryInSpace(IReplicationInContext context, Transaction txn, String uid, int version, Collection<SpaceEntryMutator> mutators, boolean isTransient, OperationID operationID, IEntryData previousEntry, long timeToLive, boolean twoPhaseCommit, String typeName) throws Exception - Throws:
Exception
-
postChangeExecution
protected void postChangeExecution(IReplicationInContext context, IEntryData previousEntryData, IEntryData modifiedEntryData) -
inEvictEntry
public void inEvictEntry(IReplicationInContext context, String uid, boolean isTransient, OperationID operationID) throws Exception - Specified by:
inEvictEntryin interfaceIReplicationInEvictEntryHandler- Throws:
Exception
-
writeEntryIntoSpace
protected void writeEntryIntoSpace(IReplicationInContext context, Transaction txn, IEntryPacket entry, long lease, boolean twoPhaseCommit) throws Exception - Throws:
Exception
-
updateEntryInSpace
protected void updateEntryInSpace(IReplicationInContext context, Transaction txn, IEntryPacket entry, IEntryPacket previousEntry, boolean partialUpdate, boolean overrideVersion, long lease, boolean twoPhaseCommit) throws UnusableEntryException, UnknownTypeException, TransactionException, RemoteException -
executeUpdateOperation
protected ExtendedAnswerHolder executeUpdateOperation(IReplicationInContext context, Transaction txn, IEntryPacket entry, IEntryPacket previousEntry, boolean partialUpdate, boolean overrideVersion, long lease, boolean twoPhaseCommit, int updateModifiers) throws UnusableEntryException, UnknownTypeException, TransactionException, RemoteException, InterruptedException -
postUpdateExecution
protected void postUpdateExecution(IReplicationInContext context, IEntryData previousEntryData, IEntryData currentEntryData) -
removeEntryFromSpace
protected void removeEntryFromSpace(IReplicationInContext context, Transaction txn, ITemplatePacket template, boolean twoPhaseCommit) throws TransactionException, UnusableEntryException, UnknownTypeException, RemoteException -
postRemoveExecution
-
updateOrWrite
protected abstract ExtendedAnswerHolder updateOrWrite(IReplicationInContext context, Transaction txn, IEntryPacket entry, long lease, int modifiers) throws TransactionException, UnusableEntryException, UnknownTypeException, RemoteException, InterruptedException -
shouldUpdateEntryInSpace
protected abstract boolean shouldUpdateEntryInSpace(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, IEntryPacket entry) throws Exception - Throws:
Exception
-
shouldChangeEntryInSpace
protected abstract boolean shouldChangeEntryInSpace(IReplicationInContext context, Transaction txn, boolean twoPhaseCommit, String typeName, String uid, boolean isTransient, int version) throws Exception - Throws:
Exception
-
shouldRemoveEntryFromSpace
protected abstract boolean shouldRemoveEntryFromSpace(boolean isTransient) -
shouldEvictEntryFromSpace
protected abstract boolean shouldEvictEntryFromSpace(boolean isTransient)
-