Class DefaultPartitionKeyResolver

java.lang.Object
com.opencqrs.framework.eventhandler.partitioning.DefaultPartitionKeyResolver
All Implemented Interfaces:
PartitionKeyResolver

public final class DefaultPartitionKeyResolver extends Object implements PartitionKeyResolver
Default implementation of PartitionKeyResolver which uses CRC32 checksums and modulo operation to derive partition numbers from event sequence identifiers.

This implementation is guaranteed to always yield the same partition number for the same event sequence identifier, as long as the number of activePartitions is constant.

  • Constructor Details

    • DefaultPartitionKeyResolver

      public DefaultPartitionKeyResolver(long activePartitions)
  • Method Details

    • resolve

      public long resolve(String sequenceId)
      Description copied from interface: PartitionKeyResolver
      Deterministically resolves a partition number for the given sequence identifier.
      Specified by:
      resolve in interface PartitionKeyResolver
      Parameters:
      sequenceId - the event sequence identifier, as derived from EventSequenceResolver implementations
      Returns:
      the partition number