public AzurePersistence(ActorSystem system, AzureTableStorageJournalSettings tableSettings,
                         AzureBlobSnapshotStoreSettings blobSettings)
 {
     _system       = system;
     TableSettings = tableSettings;
     BlobSettings  = blobSettings;
 }
Beispiel #2
0
        public void ShouldThrowArgumentExceptionForIllegalTableNames(string tableName, string reason)
        {
            Action createJournalSettings = () => AzureTableStorageJournalSettings.Create(
                ConfigurationFactory.ParseString(@"akka.persistence.journal.azure-table{
                        connection-string = foo
                        table-name = " + tableName + @" 
                    }").WithFallback(AzurePersistence.DefaultConfig)
                .GetConfig("akka.persistence.journal.azure-table"));

            createJournalSettings.Should().Throw <ArgumentException>(reason);
        }
        public void ShouldProvideDefaultTableNameValue()
        {
            var tableSettings =
                AzureTableStorageJournalSettings.Create(
                    ConfigurationFactory.ParseString(@"akka.persistence.journal.azure-table{
                        connection-string = foo
                    }").WithFallback(AzurePersistence.DefaultConfig)
                    .GetConfig("akka.persistence.journal.azure-table"));

            tableSettings.TableName.Should().Be("AkkaPersistenceDefaultTable");
        }
        public override AzurePersistence CreateExtension(ExtendedActorSystem system)
        {
            system.Settings.InjectTopLevelFallback(AzurePersistence.DefaultConfig);

            var journalSettings =
                AzureTableStorageJournalSettings.Create(
                    system.Settings.Config.GetConfig("akka.persistence.journal.azure-table"));

            var snapshotSettings =
                AzureBlobSnapshotStoreSettings.Create(
                    system.Settings.Config.GetConfig("akka.persistence.snapshot-store.azure-blob-store"));

            return(new AzurePersistence(system, journalSettings, snapshotSettings));
        }
Beispiel #5
0
        public void ShouldParseTableConfig()
        {
            var tableSettings =
                AzureTableStorageJournalSettings.Create(
                    ConfigurationFactory.ParseString(@"akka.persistence.journal.azure-table{
                        connection-string = foo
                        table-name = bar
                    }").WithFallback(AzurePersistence.DefaultConfig)
                    .GetConfig("akka.persistence.journal.azure-table"));

            tableSettings.TableName.Should().Be("bar");
            tableSettings.ConnectionString.Should().Be("foo");
            tableSettings.ConnectTimeout.Should().Be(TimeSpan.FromSeconds(3));
            tableSettings.RequestTimeout.Should().Be(TimeSpan.FromSeconds(3));
            tableSettings.VerboseLogging.Should().BeFalse();
        }