public class ShardRegion
extends java.lang.Object
implements akka.actor.Actor, akka.actor.ActorLogging
ShardRegion
actor on other nodes.
ClusterSharding extension
Modifier and Type | Class and Description |
---|---|
static class |
ShardRegion.CurrentRegions
Reply to
GetCurrentRegions |
static class |
ShardRegion.CurrentRegions$ |
static class |
ShardRegion.GetCurrentRegions$ |
static class |
ShardRegion.GracefulShutdown$ |
static class |
ShardRegion.HandOffStopper
INTERNAL API.
|
static class |
ShardRegion.HashCodeMessageExtractor
Convenience implementation of
ShardRegion.MessageExtractor that
construct shardId based on the hashCode of the entityId . |
static interface |
ShardRegion.MessageExtractor
Java API: Interface of functions to extract entity id,
shard id, and the message to send to the entity from an
incoming message.
|
static class |
ShardRegion.Passivate
If the state of the entities are persistent you may stop entities that are not used to
reduce memory consumption.
|
static class |
ShardRegion.Passivate$ |
static class |
ShardRegion.ShardInitialized
We must be sure that a shard is initialized before to start send messages to it.
|
static class |
ShardRegion.ShardInitialized$ |
static interface |
ShardRegion.ShardRegionCommand |
Constructor and Description |
---|
ShardRegion(java.lang.String typeName,
scala.Option<akka.actor.Props> entityProps,
ClusterShardingSettings settings,
java.lang.String coordinatorPath,
scala.PartialFunction<java.lang.Object,scala.Tuple2<java.lang.String,java.lang.Object>> extractEntityId,
scala.Function1<java.lang.Object,java.lang.String> extractShardId,
java.lang.Object handOffStopMessage) |
Modifier and Type | Method and Description |
---|---|
scala.math.Ordering<akka.cluster.Member> |
ageOrdering() |
void |
bufferMessage(java.lang.String shardId,
java.lang.Object msg,
akka.actor.ActorRef snd) |
void |
changeMembers(scala.collection.immutable.SortedSet<akka.cluster.Member> newMembers) |
akka.cluster.Cluster |
cluster() |
scala.Option<akka.actor.ActorRef> |
coordinator() |
scala.Option<akka.actor.ActorSelection> |
coordinatorSelection() |
void |
deliverBufferedMessages(java.lang.String shardId,
akka.actor.ActorRef receiver) |
void |
deliverMessage(java.lang.Object msg,
akka.actor.ActorRef snd) |
static ShardRegion.GetCurrentRegions$ |
getCurrentRegionsInstance() |
scala.Option<akka.actor.ActorRef> |
getShard(java.lang.String id) |
boolean |
gracefulShutdownInProgress() |
static ShardRegion.GracefulShutdown$ |
gracefulShutdownInstance()
Java API: Send this message to the
ShardRegion actor to handoff all shards that are hosted by
the ShardRegion and then the ShardRegion actor will be stopped. |
scala.collection.immutable.Set<akka.actor.ActorRef> |
handingOff() |
static akka.actor.Props |
handOffStopperProps(java.lang.String shard,
akka.actor.ActorRef replyTo,
scala.collection.immutable.Set<akka.actor.ActorRef> entities,
java.lang.Object stopMessage) |
void |
initializeShard(java.lang.String id,
akka.actor.ActorRef shard) |
boolean |
loggedFullBufferWarning() |
boolean |
matchingRole(akka.cluster.Member member) |
scala.collection.immutable.SortedSet<akka.cluster.Member> |
membersByAge() |
void |
postStop() |
void |
preStart() |
static akka.actor.Props |
props(java.lang.String typeName,
akka.actor.Props entityProps,
ClusterShardingSettings settings,
java.lang.String coordinatorPath,
scala.PartialFunction<java.lang.Object,scala.Tuple2<java.lang.String,java.lang.Object>> extractEntityId,
scala.Function1<java.lang.Object,java.lang.String> extractShardId,
java.lang.Object handOffStopMessage)
INTERNAL API
Factory method for the
Props of the ShardRegion actor. |
static akka.actor.Props |
proxyProps(java.lang.String typeName,
ClusterShardingSettings settings,
java.lang.String coordinatorPath,
scala.PartialFunction<java.lang.Object,scala.Tuple2<java.lang.String,java.lang.Object>> extractEntityId,
scala.Function1<java.lang.Object,java.lang.String> extractShardId)
INTERNAL API
Factory method for the
Props of the ShardRegion actor
when using it in proxy only mode. |
scala.PartialFunction<java.lang.Object,scala.runtime.BoxedUnit> |
receive() |
void |
receiveClusterEvent(akka.cluster.ClusterEvent.ClusterDomainEvent evt) |
void |
receiveClusterState(akka.cluster.ClusterEvent.CurrentClusterState state) |
void |
receiveCommand(ShardRegion.ShardRegionCommand cmd) |
void |
receiveCoordinatorMessage(akka.cluster.sharding.ShardCoordinator.Internal.CoordinatorMessage msg) |
void |
receiveTerminated(akka.actor.ActorRef ref) |
scala.collection.immutable.Map<java.lang.String,akka.actor.ActorRef> |
regionByShard() |
scala.collection.immutable.Map<akka.actor.ActorRef,scala.collection.immutable.Set<java.lang.String>> |
regions() |
void |
register() |
java.lang.Object |
registrationMessage() |
void |
requestShardBufferHomes() |
int |
retryCount() |
akka.actor.Cancellable |
retryTask() |
void |
sendGracefulShutdownToCoordinator() |
scala.collection.immutable.Map<java.lang.String,scala.collection.immutable.Vector<scala.Tuple2<java.lang.Object,akka.actor.ActorRef>>> |
shardBuffers() |
scala.collection.immutable.Map<java.lang.String,akka.actor.ActorRef> |
shards() |
scala.collection.immutable.Map<akka.actor.ActorRef,java.lang.String> |
shardsByRef() |
int |
totalBufferSize() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public ShardRegion(java.lang.String typeName, scala.Option<akka.actor.Props> entityProps, ClusterShardingSettings settings, java.lang.String coordinatorPath, scala.PartialFunction<java.lang.Object,scala.Tuple2<java.lang.String,java.lang.Object>> extractEntityId, scala.Function1<java.lang.Object,java.lang.String> extractShardId, java.lang.Object handOffStopMessage)
public static akka.actor.Props props(java.lang.String typeName, akka.actor.Props entityProps, ClusterShardingSettings settings, java.lang.String coordinatorPath, scala.PartialFunction<java.lang.Object,scala.Tuple2<java.lang.String,java.lang.Object>> extractEntityId, scala.Function1<java.lang.Object,java.lang.String> extractShardId, java.lang.Object handOffStopMessage)
Props
of the ShardRegion
actor.typeName
- (undocumented)entityProps
- (undocumented)settings
- (undocumented)coordinatorPath
- (undocumented)extractEntityId
- (undocumented)extractShardId
- (undocumented)handOffStopMessage
- (undocumented)public static akka.actor.Props proxyProps(java.lang.String typeName, ClusterShardingSettings settings, java.lang.String coordinatorPath, scala.PartialFunction<java.lang.Object,scala.Tuple2<java.lang.String,java.lang.Object>> extractEntityId, scala.Function1<java.lang.Object,java.lang.String> extractShardId)
Props
of the ShardRegion
actor
when using it in proxy only mode.typeName
- (undocumented)settings
- (undocumented)coordinatorPath
- (undocumented)extractEntityId
- (undocumented)extractShardId
- (undocumented)public static ShardRegion.GracefulShutdown$ gracefulShutdownInstance()
ShardRegion
actor to handoff all shards that are hosted by
the ShardRegion
and then the ShardRegion
actor will be stopped. You can watch
it to know when it is completed.public static ShardRegion.GetCurrentRegions$ getCurrentRegionsInstance()
public static akka.actor.Props handOffStopperProps(java.lang.String shard, akka.actor.ActorRef replyTo, scala.collection.immutable.Set<akka.actor.ActorRef> entities, java.lang.Object stopMessage)
public akka.cluster.Cluster cluster()
public scala.math.Ordering<akka.cluster.Member> ageOrdering()
public scala.collection.immutable.SortedSet<akka.cluster.Member> membersByAge()
public scala.collection.immutable.Map<akka.actor.ActorRef,scala.collection.immutable.Set<java.lang.String>> regions()
public scala.collection.immutable.Map<java.lang.String,akka.actor.ActorRef> regionByShard()
public scala.collection.immutable.Map<java.lang.String,scala.collection.immutable.Vector<scala.Tuple2<java.lang.Object,akka.actor.ActorRef>>> shardBuffers()
public boolean loggedFullBufferWarning()
public scala.collection.immutable.Map<java.lang.String,akka.actor.ActorRef> shards()
public scala.collection.immutable.Map<akka.actor.ActorRef,java.lang.String> shardsByRef()
public scala.collection.immutable.Set<akka.actor.ActorRef> handingOff()
public boolean gracefulShutdownInProgress()
public int totalBufferSize()
public akka.actor.Cancellable retryTask()
public int retryCount()
public void preStart()
preStart
in interface akka.actor.Actor
public void postStop()
postStop
in interface akka.actor.Actor
public boolean matchingRole(akka.cluster.Member member)
public scala.Option<akka.actor.ActorSelection> coordinatorSelection()
public scala.Option<akka.actor.ActorRef> coordinator()
public void changeMembers(scala.collection.immutable.SortedSet<akka.cluster.Member> newMembers)
public scala.PartialFunction<java.lang.Object,scala.runtime.BoxedUnit> receive()
receive
in interface akka.actor.Actor
public void receiveClusterState(akka.cluster.ClusterEvent.CurrentClusterState state)
public void receiveClusterEvent(akka.cluster.ClusterEvent.ClusterDomainEvent evt)
public void receiveCoordinatorMessage(akka.cluster.sharding.ShardCoordinator.Internal.CoordinatorMessage msg)
public void receiveCommand(ShardRegion.ShardRegionCommand cmd)
public void receiveTerminated(akka.actor.ActorRef ref)
public void register()
public java.lang.Object registrationMessage()
public void requestShardBufferHomes()
public void initializeShard(java.lang.String id, akka.actor.ActorRef shard)
public void bufferMessage(java.lang.String shardId, java.lang.Object msg, akka.actor.ActorRef snd)
public void deliverBufferedMessages(java.lang.String shardId, akka.actor.ActorRef receiver)
public void deliverMessage(java.lang.Object msg, akka.actor.ActorRef snd)
public scala.Option<akka.actor.ActorRef> getShard(java.lang.String id)
public void sendGracefulShutdownToCoordinator()