Interface IDistributedActivePivotTransaction

All Superinterfaces:
IActivePivotTransaction, ITransaction
All Known Implementing Classes:
DistributedActivePivotTransaction

public interface IDistributedActivePivotTransaction extends IActivePivotTransaction
Author:
ActiveViam
  • Method Details

    • 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 underlying IDistributedActivePivot's cube's main hierarchies and notify the listeners.
      Parameters:
      contributionDeltas - contributionsDelta The hierarchies containing the new members. They may come from several ITransactionCommittedMessage in which case the size of the list is higher than 1. The list is aligned with removalDeltas
      removalDeltas - The hierarchies containing the removed members They may come from several ITransactionCommittedMessage in which case the size of the list is higher than 1. The list is aligned with contributionDeltas
      epoch - The epoch of the remote member corresponding to the commit
      viewId - The ID of the view associated with this commit
      remoteAddress - The address of the remote instance that have seen the deltas
      remotePivotId - The ID of the remote pivot instance that have seen the deltas
      properties - The properties
      Throws:
      MergeException - if an exception is encountered during the transaction
      See Also:
    • 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 underlying IDistributedActivePivot's cube's main dimensions and notify the listeners.
      Parameters:
      contributionsDelta - The remote contributions
      epoch - The epoch associated with these delta dimensions on the remote pivot.
      viewId - The ID of the view associated with this commit
      remoteAddress - The address of the remote instance responsible for this commit
      applicationId - The application to which the remote instance belongs
      remotePivotId - The ID of the remote pivot instance responsible for this commit
      properties - 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 members membersToRemove and notify the listeners.
      Parameters:
      membersToRemove - The addresses of the cluster members to remove
      viewId - The ID of the view associated with this removal
      discard - 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: IActivePivotTransaction
      Returns the information associated with this transaction.
      Specified by:
      getTransactionInfo in interface IActivePivotTransaction