protected ExtendedNodeCommandTest(bool inMemory, AkkaConfiguration cfg = null) :
     base(inMemory ? (cfg ?? AkkaCfg).ToStandAloneInMemorySystemConfig() : (cfg ?? AkkaCfg).ToStandAloneSystemConfig()
          , AkkaCfg.Network.SystemName
          , !inMemory)
 {
     InMemory = inMemory;
 }
        protected override GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf, IDbConfiguration dbConfig)
        {
            var container = new UnityContainer();

            BusinessNews.Node.CompositionRoot.Init(container, new LocalDbConfiguration());
            return(new GridDomainNode(container, new BusinessNewsRouting(), TransportMode.Standalone, Sys));
        }
示例#3
0
        public static ActorSystemEventRepository New(AkkaConfiguration conf, EventsAdaptersCatalog eventsAdaptersCatalog)
        {
            var actorSystem = conf.CreateSystem();

            actorSystem.InitDomainEventsSerialization(eventsAdaptersCatalog);

            return(new ActorSystemEventRepository(actorSystem));
        }
        protected override ActorSystem CreateSystem(AkkaConfiguration conf)
        {
            Nodes = ActorSystemFactory.CreateCluster(AkkaConfig).NonSeedNodes;
            var actorSystem = Nodes.Last();

            _transport = new DistributedPubSubTransport(actorSystem);
            return(actorSystem);
        }
        protected override GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf, IDbConfiguration dbConfig)
        {
            _akkaCluster = ActorSystemFactory.CreateCluster(new AutoTestAkkaConfiguration());
            var unityContainer = CreateUnityContainer(dbConfig);

            return(new GridDomainNode(unityContainer,
                                      new BusinessNewsRouting(),
                                      TransportMode.Cluster, _akkaCluster.All));
        }
示例#6
0
        public GridNodeConnector(IAkkaNetworkAddress serverAddress, AkkaConfiguration clientConfiguration = null)
        {
            _serverAddress = serverAddress;

            var conf = clientConfiguration ?? new ConsoleAkkaConfiguretion();

            _consoleSystem = conf.CreateInMemorySystem();
            DomainEventsJsonSerializationExtensionProvider.Provider.Apply(_consoleSystem);
        }
示例#7
0
        protected override GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf)
        {
            var conf = new CustomContainerConfiguration(c =>
            {
                c.RegisterType <ITestDependency, TestDependencyImplementation>();
                // c.RegisterInstance<IUnityContainer>(c);
                c.RegisterInstance <IQuartzConfig>(new InMemoryQuartzConfig());
                c.RegisterAggregate <TestAggregate, TestAggregatesCommandHandler>();
            });

            return(new GridDomainNode(conf, new TestRouteMap(), () => Sys));
        }
示例#8
0
        public AkkaEventsChronicle(AkkaConfiguration akkaConf)
        {
            _system = akkaConf.CreateSystem();

            _system.AddDependencyResolver(new UnityDependencyResolver(new UnityContainer(), _system));

            _transport = new LocalAkkaEventBusTransport(_system);

            var routingActor =
                _system.ActorOf(Props.Create(() => new LocalSystemRoutingActor(new DefaultHandlerActorTypeFactory(),
                                                                               new LocalAkkaEventBusTransport(_system))));

            var actorLocator = new DefaultAggregateActorLocator();

            Router = new ActorMessagesRouter(routingActor);
        }
示例#9
0
        public static string BuildPersistenceSnapshotConfig(AkkaConfiguration akkaConf)
        {
            var persistenceSnapshotStorageConfig = @" 
            snapshot-store {
                           plugin =  ""akka.persistence.snapshot-store.sql-server""
                           sql-server {
                                      class = ""Akka.Persistence.SqlServer.Snapshot.SqlServerSnapshotStore, Akka.Persistence.SqlServer""
                                      plugin-dispatcher = ""akka.actor.default-dispatcher""
                                      connection-string = """ + akkaConf.Persistence.SnapshotConnectionString + @"""
                                      connection-timeout = " + akkaConf.Persistence.SnapshotsConnectionTimeoutSeconds + @"s
                                      schema-name = dbo
                                      table-name = """ + akkaConf.Persistence.SnapshotTableName + @"""
                                      auto-initialize = on
                           }
            }";

            return(persistenceSnapshotStorageConfig);
        }
示例#10
0
文件: Program.cs 项目: matej-hron/POC
        static void Main(string[] args)
        {
            var deployers     = new[] { new MonitorDeployer() };
            var configuration = new AkkaConfiguration();
            var akkaService   = new AkkaService(deployers, configuration);
            var monitor       = akkaService.GetActorRef(ReportMonitorActor.Name);

            akkaService.Start(_ => Console.WriteLine("akka start failed"));

            Console.WriteLine("Press enter to request reporting status (x for exit)");
            var input = Console.ReadLine();

            while (input != "x")
            {
                monitor.Tell(new GetStatus(), null);
                input = Console.ReadLine();
            }

            Console.WriteLine("Stopping...");
            akkaService.Stop();
        }
示例#11
0
        public static AkkaCluster CreateCluster(AkkaConfiguration akkaConf, int seedNodeNumber = 2,
                                                int childNodeNumber = 3)
        {
            var port            = akkaConf.Network.PortNumber;
            var seedNodeConfigs = Enumerable.Range(0, seedNodeNumber).Select(n => akkaConf.Copy(port++)).ToArray();
            var seedAdresses    = seedNodeConfigs.Select(s => s.Network).ToArray();

            var seedSystems =
                seedNodeConfigs.Select(
                    c => ActorSystem.Create(c.Network.SystemName, c.ToClusterSeedNodeSystemConfig(seedAdresses)));

            var nonSeedConfiguration = Enumerable.Range(0, childNodeNumber)
                                       .Select(
                n =>
                ActorSystem.Create(akkaConf.Network.SystemName,
                                   akkaConf.ToClusterNonSeedNodeSystemConfig(seedAdresses)));


            return(new AkkaCluster {
                SeedNodes = seedSystems.ToArray(), NonSeedNodes = nonSeedConfiguration.ToArray()
            });
        }
示例#12
0
 protected override GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf)
 {
     return(new GridDomainNode(CreateConfiguration(), CreateMap(), () => AkkaCfg.CreateSystem()));
 }
示例#13
0
 protected override ActorSystem CreateSystem(AkkaConfiguration conf)
 {
     _actorSystem = AkkaConfig.CreateSystem();
     _transport   = new LocalAkkaEventBusTransport(_actorSystem);
     return(_actorSystem);
 }
示例#14
0
 public SingleActorSystemInfrastructure(AkkaConfiguration conf) : base(conf)
 {
 }
示例#15
0
 protected abstract GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf);
示例#16
0
 public SampleDomainCommandExecutionTests(bool inMemory, AkkaConfiguration config = null) : base(inMemory, config)
 {
 }
 public ClusterActorSystemInfrastructure(AkkaConfiguration conf) : base(conf)
 {
 }
示例#18
0
 protected ActorSystemInfrastruture(AkkaConfiguration conf)
 {
     AkkaConfig = conf;
 }
 protected override GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf)
 {
     return(new GridDomainNode(CreateConfiguration(), CreateMap(), () => new [] { Sys },
                               (InMemory ? (IQuartzConfig) new InMemoryQuartzConfig() : new PersistedQuartzConfig())));
 }
示例#20
0
 protected override GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf)
 {
     return(new GridDomainNode(CreateConfiguration(), CreateMap(), () => new[] { akkaConf.CreateInMemorySystem() },
                               new InMemoryQuartzConfig()));
 }
示例#21
0
 public PersistenceSnapshotConfig(AkkaConfiguration akka)
 {
     _akka = akka;
 }
 public static ActorSystem CreateInMemorySystem(this AkkaConfiguration conf)
 {
     return(ActorSystem.Create(conf.Network.SystemName, conf.ToStandAloneInMemorySystemConfig()));
 }
示例#23
0
 protected abstract ActorSystem CreateSystem(AkkaConfiguration conf);
示例#24
0
 public static ActorSystem CreateActorSystem(AkkaConfiguration akkaConf)
 {
     return(akkaConf.CreateSystem());
 }
 protected override GridDomainNode CreateGridDomainNode(AkkaConfiguration akkaConf, IDbConfiguration dbConfig)
 {
     return(new GridDomainNode(CreateUnityContainer(dbConfig),
                               new BusinessNewsRouting(),
                               TransportMode.Standalone, ActorSystemFactory.CreateActorSystem(akkaConf)));
 }