public void Aggregate_managers_can_be_started() { RunOn(() => { var region = ClusterFactory <TestAggregateManager, TestAggregate, TestAggregateId> .StartClusteredAggregate(Sys, _numberOfShards); region.Tell(new Identify(1)); ExpectMsg <ActorIdentity>(x => x.MessageId.Equals(1)); Sys.Log.Info("region address: {0}", region.Path); }, _config.Worker); EnterBarrier("aggregate-managers-started"); }
public static IAkkatectureBuilder AddAggregateManagerCluster <TAggregateManager, TAggregate, TIdentity>( this IAkkatectureBuilder builder, int numberOfShards = 12) where TAggregateManager : ReceiveActor, IAggregateManager <TAggregate, TIdentity> where TAggregate : IAggregateRoot <TIdentity> where TIdentity : IIdentity { var aggregateManager = ClusterFactory <TAggregateManager, TAggregate, TIdentity> .StartClusteredAggregate( builder.ActorSystem, numberOfShards); var actorRef = new ActorRefOfT <TAggregateManager>(aggregateManager); builder.Services.AddSingleton <IActorRef <TAggregateManager> >(actorRef); return(builder); }
public static void StartUserAccountCluster(ActorSystem actorSystem) { ClusterFactory <UserAccountAggregateManager, UserAccountAggregate, UserAccountId> .StartClusteredAggregate(actorSystem); }