Packages

c

akka.cluster.sharding.typed

HashCodeMessageExtractor

final class HashCodeMessageExtractor[M] extends ShardingMessageExtractor[ShardingEnvelope[M], M]

Default message extractor type, using envelopes to identify what entity a message is for and the hashcode of the entityId to decide which shard an entity belongs to.

This is recommended since it does not force details about sharding into the entity protocol

M

The type of message accepted by the entity actor

Source
ShardingMessageExtractor.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. HashCodeMessageExtractor
  2. ShardingMessageExtractor
  3. AnyRef
  4. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new HashCodeMessageExtractor(numberOfShards: Int)

Value Members

  1. def entityId(envelope: ShardingEnvelope[M]): String

    Extract the entity id from an incoming message.

    Extract the entity id from an incoming message. If null is returned the message will be unhandled, i.e. posted as Unhandled messages on the event stream

    Definition Classes
    HashCodeMessageExtractorShardingMessageExtractor
  2. val numberOfShards: Int
  3. def shardId(entityId: String): String

    The shard identifier for a given entity id.

    The shard identifier for a given entity id. Only messages that passed the ShardingMessageExtractor#entityId function will be used as input to this function.

    Definition Classes
    HashCodeMessageExtractorShardingMessageExtractor
  4. def unwrapMessage(envelope: ShardingEnvelope[M]): M

    Extract the message to send to the entity from an incoming message.

    Extract the message to send to the entity from an incoming message. Note that the extracted message does not have to be the same as the incoming message to support wrapping in message envelope that is unwrapped before sending to the entity actor.

    Definition Classes
    HashCodeMessageExtractorShardingMessageExtractor