示例#1
0
        // build
        public static AkkaBuild Build(this AkkaConfig akkaConfig, IServiceCollection services)
        {
            var response = new AkkaBuild(ActorSystem.Create(akkaConfig.ActorSystemName, ConfigurationFactory.ParseString(string.Concat(akkaConfig.HoconSections))));

            services.AddSingleton(response.ActorSystem);

            return(response);
        }
示例#2
0
        // config add-ons
        public static AkkaPersistenceConfig UseSqlPersistence(this AkkaConfig akkaConfig, IConfiguration configuration, string connectionName)
        {
            // get connection string
            var connectionString = configuration.GetConnectionString(connectionName);

            connectionString = connectionString.Replace("\\", "\\\\");

            // create SQL hocon sections with connection string injected
            var hoconSections = akkaConfig.HoconSections.ToList();

            hoconSections.Add(GetPersistenceSqlJournalConfig(connectionString));
            hoconSections.Add(GetPersistenceSqlSnapshotConfig(connectionString));

            return(new AkkaPersistenceConfig(akkaConfig.ActorSystemName, akkaConfig.ActorRefsType, hoconSections));
        }