Package com.qfs.distribution
Interface IDistributedActivePivotTransaction
-
- All Superinterfaces:
IActivePivotTransaction,ITransaction
- All Known Implementing Classes:
DistributedActivePivotTransaction
public interface IDistributedActivePivotTransaction extends IActivePivotTransaction
Atransactionon adistributed pivot.- Author:
- ActiveViam
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classIDistributedActivePivotTransaction.DistributedActivePivotTransactionInfoTypeAvailable info types.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IActivePivotRemoteTransactionInfogetTransactionInfo()Returns theinformationassociated with this transaction.voidonInitialRemoteCommit(List<? extends IDimension<? extends IHierarchy>> contributionsDelta, IEpoch epoch, long viewId, String remoteAddress, String applicationId, String remotePivotId, Properties properties)Merges the delta dimensions from a remote instance's initial commit into the underlyingIDistributedActivePivot's cube's maindimensionsand notify the listeners.voidonRemoteCommit(List<List<? extends IDimension<? extends IHierarchy>>> contributionDeltas, List<List<? extends IDimension<? extends IHierarchy>>> removalDeltas, IEpoch epoch, long viewId, String remoteAddress, String remotePivotId, Properties properties)Merges the delta hierarchies from a remote instance's commit into the underlyingIDistributedActivePivot's cube's mainhierarchiesand notify the listeners.voidremoveMembersFromCube(Set<String> membersToRemove, long viewId, boolean discard)Removes all the contributions from the cluster membersmembersToRemoveand notify the listeners.-
Methods inherited from interface com.quartetfs.biz.pivot.IActivePivotTransaction
getContext, getFactFeed, getPipelines, getTimestamp, reset, setPreviousDatabaseVersion
-
Methods inherited from interface com.qfs.multiversion.ITransaction
commit, isEmpty, prepareCommit, rollback
-
-
-
-
Method Detail
-
onRemoteCommit
void onRemoteCommit(List<List<? extends IDimension<? extends IHierarchy>>> contributionDeltas, List<List<? extends IDimension<? extends IHierarchy>>> removalDeltas, IEpoch epoch, long viewId, String remoteAddress, String remotePivotId, Properties properties) throws MergeException
Merges the delta hierarchies from a remote instance's commit into the underlyingIDistributedActivePivot's cube's mainhierarchiesand notify the listeners.- Parameters:
contributionDeltas- contributionsDelta The hierarchies containing the new members. They may come from severalITransactionCommittedMessagein which case the size of the list is higher than 1. The list is aligned with removalDeltasremovalDeltas- The hierarchies containing the removed members They may come from severalITransactionCommittedMessagein which case the size of the list is higher than 1. The list is aligned with contributionDeltasepoch- The epoch of the remote member corresponding to the commitviewId- The ID of theviewassociated with this commitremoteAddress- The address of the remote instance that have seen the deltasremotePivotId- The ID of the remote pivot instance that have seen the deltasproperties- The properties- Throws:
MergeException- if an exception is encountered during the transaction- See Also:
IMultiVersionDistributedActivePivot.onRemoteCommit(List, List, IEpoch, long, String, String, Properties)
-
onInitialRemoteCommit
void onInitialRemoteCommit(List<? extends IDimension<? extends IHierarchy>> contributionsDelta, IEpoch epoch, long viewId, String remoteAddress, String applicationId, String remotePivotId, Properties properties) throws MergeException
Merges the delta dimensions from a remote instance's initial commit into the underlyingIDistributedActivePivot's cube's maindimensionsand notify the listeners.- Parameters:
contributionsDelta- The remote contributionsepoch- The epoch associated with these delta dimensions on the remote pivot.viewId- The ID of theviewassociated with this commitremoteAddress- The address of the remote instance responsible for this commitapplicationId- The application to which the remote instance belongsremotePivotId- The ID of the remote pivot instance responsible for this commitproperties- The properties- Throws:
MergeException- if an exception is encountered during the transaction
-
removeMembersFromCube
void removeMembersFromCube(Set<String> membersToRemove, long viewId, boolean discard) throws MergeException
Removes all the contributions from the cluster membersmembersToRemoveand notify the listeners.- Parameters:
membersToRemove- The addresses of the cluster members to removeviewId- The ID of theviewassociated with this removaldiscard- True to remove all contributions from the given remote instances.- Throws:
MergeException- if an exception is encountered during the transaction
-
getTransactionInfo
IActivePivotRemoteTransactionInfo getTransactionInfo()
Description copied from interface:IActivePivotTransactionReturns theinformationassociated with this transaction.- Specified by:
getTransactionInfoin interfaceIActivePivotTransaction
-
-