diff --git a/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/internal/ClusterShardingImpl.scala b/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/internal/ClusterShardingImpl.scala index 3096d37010..2904b4ad3d 100644 --- a/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/internal/ClusterShardingImpl.scala +++ b/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/internal/ClusterShardingImpl.scala @@ -133,7 +133,7 @@ import akka.util.Timeout private val shardCommandActors: ConcurrentHashMap[String, ActorRef[scaladsl.ClusterSharding.ShardCommand]] = new ConcurrentHashMap // scaladsl impl - override def start[M, E](entity: scaladsl.Entity[M, E]): ActorRef[E] = { + override def init[M, E](entity: scaladsl.Entity[M, E]): ActorRef[E] = { val settings = entity.settings match { case None ⇒ ClusterShardingSettings(system) case Some(s) ⇒ s @@ -144,14 +144,14 @@ import akka.util.Timeout case Some(e) ⇒ e }).asInstanceOf[ShardingMessageExtractor[E, M]] - internalStart(entity.createBehavior, entity.entityProps, entity.typeKey, + internalInit(entity.createBehavior, entity.entityProps, entity.typeKey, entity.stopMessage, settings, extractor, entity.allocationStrategy) } // javadsl impl - override def start[M, E](entity: javadsl.Entity[M, E]): ActorRef[E] = { + override def init[M, E](entity: javadsl.Entity[M, E]): ActorRef[E] = { import scala.compat.java8.OptionConverters._ - start(new scaladsl.Entity( + init(new scaladsl.Entity( createBehavior = (ctx: EntityContext) ⇒ Behaviors.setup[M] { actorContext ⇒ entity.createBehavior( new javadsl.EntityContext[M](ctx.entityId, ctx.shard, actorContext.asJava)) @@ -165,7 +165,7 @@ import akka.util.Timeout )) } - private def internalStart[M, E]( + private def internalInit[M, E]( behavior: EntityContext ⇒ Behavior[M], entityProps: Props, typeKey: scaladsl.EntityTypeKey[M], @@ -241,7 +241,7 @@ import akka.util.Timeout typeNames.putIfAbsent(typeKey.name, messageClassName) match { case spawnedMessageClassName: String if messageClassName != spawnedMessageClassName ⇒ - throw new IllegalArgumentException(s"[${typeKey.name}] already started for [$spawnedMessageClassName]") + throw new IllegalArgumentException(s"[${typeKey.name}] already initialized for [$spawnedMessageClassName]") case _ ⇒ () } diff --git a/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/javadsl/ClusterSharding.scala b/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/javadsl/ClusterSharding.scala index 4b13a7e7ad..4925dd034e 100644 --- a/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/javadsl/ClusterSharding.scala +++ b/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/javadsl/ClusterSharding.scala @@ -7,7 +7,6 @@ package javadsl import java.util.Optional import java.util.concurrent.CompletionStage -import java.util.function.BiFunction import akka.actor.typed.ActorRef import akka.actor.typed.ActorSystem @@ -72,7 +71,7 @@ object ClusterSharding { * to route the message with the entity id to the final destination. * * This extension is supposed to be used by first, typically at system startup on each node - * in the cluster, registering the supported entity types with the [[ClusterSharding#spawn]] + * in the cluster, registering the supported entity types with the [[ClusterSharding#init]] * method, which returns the `ShardRegion` actor reference for a named entity type. * Messages to the entities are always sent via that `ActorRef`, i.e. the local `ShardRegion`. * Messages can also be sent via the [[EntityRef]] retrieved with [[ClusterSharding#entityRefFor]], @@ -176,7 +175,7 @@ abstract class ClusterSharding { * @tparam M The type of message the entity accepts * @tparam E A possible envelope around the message the entity accepts */ - def start[M, E](entity: Entity[M, E]): ActorRef[E] + def init[M, E](entity: Entity[M, E]): ActorRef[E] /** * Create an `ActorRef`-like reference to a specific sharded entity. @@ -199,7 +198,7 @@ abstract class ClusterSharding { object Entity { /** - * Defines how the entity should be created. Used in [[ClusterSharding#start]]. More optional + * Defines how the entity should be created. Used in [[ClusterSharding#init]]. More optional * settings can be defined using the `with` methods of the returned [[Entity]]. * * Any [[Behavior]] can be used as a sharded entity actor, but the combination of sharding and persistent actors @@ -217,7 +216,7 @@ object Entity { } /** - * Defines how the [[PersistentEntity]] should be created. Used in [[ClusterSharding#start]]. Any [[Behavior]] can + * Defines how the [[PersistentEntity]] should be created. Used in [[ClusterSharding#init]]. Any [[Behavior]] can * be used as a sharded entity actor, but the combination of sharding and persistent actors is very common * and therefore this factory is provided as convenience. * @@ -246,7 +245,7 @@ object Entity { } /** - * Defines how the entity should be created. Used in [[ClusterSharding#start]]. + * Defines how the entity should be created. Used in [[ClusterSharding#init]]. */ final class Entity[M, E] private[akka] ( val createBehavior: JFunction[EntityContext[M], Behavior[M]], diff --git a/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/scaladsl/ClusterSharding.scala b/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/scaladsl/ClusterSharding.scala index 540f2de5c4..ba75e8ccac 100644 --- a/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/scaladsl/ClusterSharding.scala +++ b/akka-cluster-sharding-typed/src/main/scala/akka/cluster/sharding/typed/scaladsl/ClusterSharding.scala @@ -19,7 +19,6 @@ import akka.actor.typed.ExtensionSetup import akka.actor.typed.RecipientRef import akka.actor.typed.Props import akka.actor.typed.internal.InternalRecipientRef -import akka.actor.typed.scaladsl.ActorContext import akka.annotation.DoNotInherit import akka.annotation.InternalApi import akka.cluster.sharding.ShardCoordinator.ShardAllocationStrategy @@ -27,7 +26,6 @@ import akka.cluster.sharding.typed.internal.ClusterShardingImpl import akka.cluster.sharding.typed.internal.EntityTypeKeyImpl import akka.cluster.sharding.ShardRegion.{ StartEntity ⇒ UntypedStartEntity } import akka.persistence.typed.PersistenceId -import akka.persistence.typed.scaladsl.PersistentBehavior object ClusterSharding extends ExtensionId[ClusterSharding] { @@ -74,7 +72,7 @@ object ClusterSharding extends ExtensionId[ClusterSharding] { * to route the message with the entity id to the final destination. * * This extension is supposed to be used by first, typically at system startup on each node - * in the cluster, registering the supported entity types with the [[ClusterSharding#spawn]] + * in the cluster, registering the supported entity types with the [[ClusterSharding#init]] * method, which returns the `ShardRegion` actor reference for a named entity type. * Messages to the entities are always sent via that `ActorRef`, i.e. the local `ShardRegion`. * Messages can also be sent via the [[EntityRef]] retrieved with [[ClusterSharding#entityRefFor]], @@ -178,7 +176,7 @@ trait ClusterSharding extends Extension { javadslSelf: javadsl.ClusterSharding * @tparam M The type of message the entity accepts * @tparam E A possible envelope around the message the entity accepts */ - def start[M, E](entity: Entity[M, E]): ActorRef[E] + def init[M, E](entity: Entity[M, E]): ActorRef[E] /** * Create an `ActorRef`-like reference to a specific sharded entity. @@ -206,12 +204,12 @@ trait ClusterSharding extends Extension { javadslSelf: javadsl.ClusterSharding object Entity { /** - * Defines how the entity should be created. Used in [[ClusterSharding#start]]. More optional + * Defines how the entity should be created. Used in [[ClusterSharding#init]]. More optional * settings can be defined using the `with` methods of the returned [[Entity]]. * * Any [[Behavior]] can be used as a sharded entity actor, but the combination of sharding and persistent actors * is very common and therefore [[PersistentEntity]] is provided as a convenience for creating such - * [[PersistentBehavior]]. + * `PersistentBehavior`. * * @param typeKey A key that uniquely identifies the type of entity in this cluster * @param createBehavior Create the behavior for an entity given a [[EntityContext]] (includes entityId) @@ -224,7 +222,7 @@ object Entity { } /** - * Defines how the entity should be created. Used in [[ClusterSharding#start]]. + * Defines how the entity should be created. Used in [[ClusterSharding#init]]. */ final class Entity[M, E] private[akka] ( val createBehavior: EntityContext ⇒ Behavior[M], diff --git a/akka-cluster-sharding-typed/src/multi-jvm/scala/akka/cluster/sharding/typed/MultiDcClusterShardingSpec.scala b/akka-cluster-sharding-typed/src/multi-jvm/scala/akka/cluster/sharding/typed/MultiDcClusterShardingSpec.scala index faeb65651b..0a25526b54 100644 --- a/akka-cluster-sharding-typed/src/multi-jvm/scala/akka/cluster/sharding/typed/MultiDcClusterShardingSpec.scala +++ b/akka-cluster-sharding-typed/src/multi-jvm/scala/akka/cluster/sharding/typed/MultiDcClusterShardingSpec.scala @@ -67,14 +67,14 @@ abstract class MultiDcClusterShardingSpec extends MultiNodeSpec(MultiDcClusterSh formCluster(first, second, third, fourth) } - "start sharding" in { + "init sharding" in { val sharding = ClusterSharding(typedSystem) - val shardRegion: ActorRef[ShardingEnvelope[PingProtocol]] = sharding.start( + val shardRegion: ActorRef[ShardingEnvelope[PingProtocol]] = sharding.init( Entity(typeKey, _ ⇒ multiDcPinger)) val probe = TestProbe[Pong] shardRegion ! ShardingEnvelope(entityId, Ping(probe.ref)) probe.expectMessage(max = 10.seconds, Pong(cluster.selfMember.dataCenter)) - enterBarrier("sharding-started") + enterBarrier("sharding-initialized") } "be able to message via entity ref" in { @@ -96,7 +96,7 @@ abstract class MultiDcClusterShardingSpec extends MultiNodeSpec(MultiDcClusterSh "be able to message cross dc via proxy" in { runOn(first, second) { - val proxy: ActorRef[ShardingEnvelope[PingProtocol]] = ClusterSharding(typedSystem).start( + val proxy: ActorRef[ShardingEnvelope[PingProtocol]] = ClusterSharding(typedSystem).init( Entity( typeKey, _ ⇒ multiDcPinger) diff --git a/akka-cluster-sharding-typed/src/test/java/akka/cluster/sharding/typed/javadsl/ClusterShardingPersistenceTest.java b/akka-cluster-sharding-typed/src/test/java/akka/cluster/sharding/typed/javadsl/ClusterShardingPersistenceTest.java index 82ceb45844..d8a958ac39 100644 --- a/akka-cluster-sharding-typed/src/test/java/akka/cluster/sharding/typed/javadsl/ClusterShardingPersistenceTest.java +++ b/akka-cluster-sharding-typed/src/test/java/akka/cluster/sharding/typed/javadsl/ClusterShardingPersistenceTest.java @@ -21,7 +21,6 @@ import org.junit.ClassRule; import org.junit.Test; import org.scalatest.junit.JUnitSuite; -import java.time.Duration; import java.util.concurrent.CompletionStage; import static org.junit.Assert.assertEquals; @@ -135,7 +134,7 @@ public class ClusterShardingPersistenceTest extends JUnitSuite { ClusterSharding sharding = ClusterSharding.get(testKit.system()); - sharding.start(Entity.ofPersistentEntity(TestPersistentEntity.ENTITY_TYPE_KEY, + sharding.init(Entity.ofPersistentEntity(TestPersistentEntity.ENTITY_TYPE_KEY, entityContext -> new TestPersistentEntity(entityContext.getEntityId())) .withStopMessage(StopPlz.INSTANCE)); diff --git a/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.java b/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.java index 75660ba753..cc85e27037 100644 --- a/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.java +++ b/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.java @@ -42,7 +42,7 @@ public class HelloWorldPersistentEntityExample { this.system = system; sharding = ClusterSharding.get(system); - sharding.start( + sharding.init( Entity.ofPersistentEntity( HelloWorld.ENTITY_TYPE_KEY, ctx -> new HelloWorld(ctx.getActorContext(), ctx.getEntityId()))); diff --git a/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleTest.java b/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleTest.java index 0d3dd5be55..22e1b9d567 100644 --- a/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleTest.java +++ b/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleTest.java @@ -41,7 +41,7 @@ public class HelloWorldPersistentEntityExampleTest extends JUnitSuite { cluster.manager().tell(new Join(cluster.selfMember().address())); ClusterSharding sharding = ClusterSharding.get(testKit.system()); - sharding.start( + sharding.init( Entity.ofPersistentEntity( HelloWorld.ENTITY_TYPE_KEY, ctx -> new HelloWorld(ctx.getActorContext(), ctx.getEntityId()))); diff --git a/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java b/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java index 9e20c4fbbc..6c0d008d35 100644 --- a/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java +++ b/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java @@ -89,22 +89,22 @@ public class ShardingCompileOnlyTest { } //#counter-passivate - public static void startPassivateExample() { + public static void initPassivateExample() { ActorSystem system = ActorSystem.create( Behaviors.empty(), "ShardingExample" ); ClusterSharding sharding = ClusterSharding.get(system); - //#counter-passivate-start + //#counter-passivate-init EntityTypeKey typeKey = EntityTypeKey.create(CounterCommand.class, "Counter"); - sharding.start( + sharding.init( Entity.of( typeKey, ctx -> counter2(ctx.getShard(), ctx.getEntityId())) .withStopMessage(new GoodByeCounter())); - //#counter-passivate-start + //#counter-passivate-init } public static void example() { @@ -117,14 +117,14 @@ public class ShardingCompileOnlyTest { ClusterSharding sharding = ClusterSharding.get(system); //#sharding-extension - //#start + //#init EntityTypeKey typeKey = EntityTypeKey.create(CounterCommand.class, "Counter"); - ActorRef> shardRegion = sharding.start( + ActorRef> shardRegion = sharding.init( Entity.of( typeKey, ctx -> counter(ctx.getEntityId(),0))); - //#start + //#init //#send EntityRef counterOne = sharding.entityRefFor(typeKey, "counter-`"); @@ -143,7 +143,7 @@ public class ShardingCompileOnlyTest { //#persistence EntityTypeKey blogTypeKey = EntityTypeKey.create(BlogCommand.class, "BlogPost"); - sharding.start( + sharding.init( Entity.of( blogTypeKey, ctx -> BlogBehavior.behavior(ctx.getEntityId()))); diff --git a/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingPersistenceSpec.scala b/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingPersistenceSpec.scala index 304905a64a..2227f96d17 100644 --- a/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingPersistenceSpec.scala +++ b/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingPersistenceSpec.scala @@ -139,7 +139,7 @@ class ClusterShardingPersistenceSpec extends ScalaTestWithActorTestKit(ClusterSh "Typed cluster sharding with persistent actor" must { - ClusterSharding(system).start(Entity( + ClusterSharding(system).init(Entity( typeKey, ctx ⇒ persistentEntity(ctx.entityId, ctx.shard))) diff --git a/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingSpec.scala b/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingSpec.scala index 358703e825..c4256d47a5 100644 --- a/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingSpec.scala +++ b/akka-cluster-sharding-typed/src/test/scala/akka/cluster/sharding/typed/scaladsl/ClusterShardingSpec.scala @@ -188,17 +188,17 @@ class ClusterShardingSpec extends ScalaTestWithActorTestKit(ClusterShardingSpec. Behaviors.same } - private val shardingRef1: ActorRef[ShardingEnvelope[TestProtocol]] = sharding.start(Entity( + private val shardingRef1: ActorRef[ShardingEnvelope[TestProtocol]] = sharding.init(Entity( typeKey, ctx ⇒ behavior(ctx.shard)) .withStopMessage(StopPlz())) - private val shardingRef2 = sharding2.start(Entity( + private val shardingRef2 = sharding2.init(Entity( typeKey, ctx ⇒ behavior(ctx.shard)) .withStopMessage(StopPlz())) - private val shardingRef3: ActorRef[IdTestProtocol] = sharding.start(Entity( + private val shardingRef3: ActorRef[IdTestProtocol] = sharding.init(Entity( typeKey2, ctx ⇒ behaviorWithId(ctx.shard)) .withMessageExtractor(ShardingMessageExtractor.noEnvelope[IdTestProtocol](10, IdStopPlz()) { @@ -209,7 +209,7 @@ class ClusterShardingSpec extends ScalaTestWithActorTestKit(ClusterShardingSpec. .withStopMessage(IdStopPlz()) ) - private val shardingRef4 = sharding2.start(Entity( + private val shardingRef4 = sharding2.init(Entity( typeKey2, ctx ⇒ behaviorWithId(ctx.shard)) .withMessageExtractor( @@ -268,7 +268,7 @@ class ClusterShardingSpec extends ScalaTestWithActorTestKit(ClusterShardingSpec. val p = TestProbe[String]() val typeKey3 = EntityTypeKey[TestProtocol]("passivate-test") - val shardingRef3: ActorRef[ShardingEnvelope[TestProtocol]] = sharding.start(Entity( + val shardingRef3: ActorRef[ShardingEnvelope[TestProtocol]] = sharding.init(Entity( typeKey3, ctx ⇒ behavior(ctx.shard, Some(stopProbe.ref))) .withStopMessage(StopPlz())) @@ -289,7 +289,7 @@ class ClusterShardingSpec extends ScalaTestWithActorTestKit(ClusterShardingSpec. val p = TestProbe[String]() val typeKey4 = EntityTypeKey[TestProtocol]("passivate-test-poison") - val shardingRef4: ActorRef[ShardingEnvelope[TestProtocol]] = sharding.start(Entity( + val shardingRef4: ActorRef[ShardingEnvelope[TestProtocol]] = sharding.init(Entity( typeKey4, ctx ⇒ behavior(ctx.shard, Some(stopProbe.ref)))) // no StopPlz stopMessage @@ -305,16 +305,16 @@ class ClusterShardingSpec extends ScalaTestWithActorTestKit(ClusterShardingSpec. p.expectMessage("Hello!") } - "fail if starting sharding for already used typeName, but with a different type" in { - // sharding has been already started with EntityTypeKey[TestProtocol]("envelope-shard") + "fail if init sharding for already used typeName, but with a different type" in { + // sharding has been already initialized with EntityTypeKey[TestProtocol]("envelope-shard") val ex = intercept[Exception] { - sharding.start(Entity( + sharding.init(Entity( EntityTypeKey[IdTestProtocol]("envelope-shard"), ctx ⇒ behaviorWithId(ctx.shard)) .withStopMessage(IdStopPlz())) } - ex.getMessage should include("already started") + ex.getMessage should include("already initialized") } "EntityRef - tell" in { @@ -374,7 +374,7 @@ class ClusterShardingSpec extends ScalaTestWithActorTestKit(ClusterShardingSpec. "EntityRef - AskTimeoutException" in { val ignorantKey = EntityTypeKey[TestProtocol]("ignorant") - sharding.start(Entity( + sharding.init(Entity( ignorantKey, _ ⇒ Behaviors.ignore[TestProtocol]) .withStopMessage(StopPlz())) diff --git a/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.scala b/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.scala index 8c8e78b7a3..0fc612fde3 100644 --- a/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.scala +++ b/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExample.scala @@ -23,7 +23,7 @@ object HelloWorldPersistentEntityExample { // registration at startup private val sharding = ClusterSharding(system) - sharding.start(Entity( + sharding.init(Entity( typeKey = HelloWorld.entityTypeKey, createBehavior = entityContext ⇒ HelloWorld.persistentEntity(entityContext.entityId))) diff --git a/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleSpec.scala b/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleSpec.scala index b0da6f8e8d..ce3ff48403 100644 --- a/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleSpec.scala +++ b/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/HelloWorldPersistentEntityExampleSpec.scala @@ -35,7 +35,7 @@ class HelloWorldPersistentEntityExampleSpec extends ScalaTestWithActorTestKit(He super.beforeAll() Cluster(system).manager ! Join(Cluster(system).selfMember.address) - sharding.start(Entity( + sharding.init(Entity( HelloWorld.entityTypeKey, ctx ⇒ HelloWorld.persistentEntity(ctx.entityId))) } diff --git a/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/ShardingCompileOnlySpec.scala b/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/ShardingCompileOnlySpec.scala index 16408abaae..40abe9469e 100644 --- a/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/ShardingCompileOnlySpec.scala +++ b/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/ShardingCompileOnlySpec.scala @@ -43,13 +43,13 @@ object ShardingCompileOnlySpec { } //#counter - //#start + //#init val TypeKey = EntityTypeKey[CounterCommand]("Counter") - val shardRegion: ActorRef[ShardingEnvelope[CounterCommand]] = sharding.start(Entity( + val shardRegion: ActorRef[ShardingEnvelope[CounterCommand]] = sharding.init(Entity( typeKey = TypeKey, createBehavior = ctx ⇒ counter(ctx.entityId, 0))) - //#start + //#init //#send // With an EntityRef @@ -64,7 +64,7 @@ object ShardingCompileOnlySpec { //#persistence val BlogTypeKey = EntityTypeKey[BlogCommand]("BlogPost") - ClusterSharding(system).start(Entity( + ClusterSharding(system).init(Entity( typeKey = BlogTypeKey, createBehavior = ctx ⇒ behavior(ctx.entityId))) //#persistence @@ -98,7 +98,7 @@ object ShardingCompileOnlySpec { } } - sharding.start(Entity( + sharding.init(Entity( typeKey = TypeKey, createBehavior = ctx ⇒ counter2(ctx.shard, ctx.entityId)) .withStopMessage(GoodByeCounter)) diff --git a/akka-docs/src/main/paradox/typed/cluster-sharding.md b/akka-docs/src/main/paradox/typed/cluster-sharding.md index b4fb7082b3..3b5a4617e3 100644 --- a/akka-docs/src/main/paradox/typed/cluster-sharding.md +++ b/akka-docs/src/main/paradox/typed/cluster-sharding.md @@ -45,10 +45,10 @@ Java Each Entity type has a key that is then used to retrieve an EntityRef for a given entity identifier. Scala -: @@snip [ShardingCompileOnlySpec.scala](/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/ShardingCompileOnlySpec.scala) { #start } +: @@snip [ShardingCompileOnlySpec.scala](/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/ShardingCompileOnlySpec.scala) { #init } Java -: @@snip [ShardingCompileOnlyTest.java](/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java) { #start } +: @@snip [ShardingCompileOnlyTest.java](/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java) { #init } Messages to a specific entity are then sent via an EntityRef. It is also possible to wrap methods in a `ShardingEnvelop` or define extractor functions and send messages directly to the shard region. @@ -115,7 +115,7 @@ Scala : @@snip [ShardingCompileOnlySpec.scala](/akka-cluster-sharding-typed/src/test/scala/docs/akka/cluster/sharding/typed/ShardingCompileOnlySpec.scala) { #counter-messages #counter-passivate } Java -: @@snip [ShardingCompileOnlyTest.java](/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java) { #counter-messages #counter-passivate #counter-passivate-start } +: @@snip [ShardingCompileOnlyTest.java](/akka-cluster-sharding-typed/src/test/java/jdocs/akka/cluster/sharding/typed/ShardingCompileOnlyTest.java) { #counter-messages #counter-passivate #counter-passivate-init } Note that in the above example the `stopMessage` is specified as `GoodByeCounter`. That message will be sent to the entity when it's supposed to stop itself due to rebalance or passivation. If the `stopMessage` is not defined