コード例 #1
0
 public AzurePersistence(ActorSystem system, AzureTableStorageJournalSettings tableSettings,
                         AzureBlobSnapshotStoreSettings blobSettings)
 {
     _system       = system;
     TableSettings = tableSettings;
     BlobSettings  = blobSettings;
 }
コード例 #2
0
        public void ShouldProvideDefaultContainerNameValue()
        {
            var blobSettings =
                AzureBlobSnapshotStoreSettings.Create(
                    ConfigurationFactory.ParseString(@"akka.persistence.snapshot-store.azure-blob-store{
                        connection-string = foo
                    }").WithFallback(AzurePersistence.DefaultConfig)
                    .GetConfig("akka.persistence.snapshot-store.azure-blob-store"));

            blobSettings.ContainerName.Should().Be("akka-persistence-default-container");
        }
コード例 #3
0
        public void ShouldThrowArgumentExceptionForIllegalContainerNames(string containerName, string reason)
        {
            Action createSnapshotSettings = () =>
                                            AzureBlobSnapshotStoreSettings.Create(
                ConfigurationFactory.ParseString(@"akka.persistence.snapshot-store.azure-blob-store{
                        connection-string = foo
                        container-name = " + containerName + @"
                    }").WithFallback(AzurePersistence.DefaultConfig)
                .GetConfig("akka.persistence.snapshot-store.azure-blob-store"));

            createSnapshotSettings.Should().Throw <ArgumentException>(reason);
        }
コード例 #4
0
        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));
        }
コード例 #5
0
        public void ShouldParseDefaultSnapshotConfig()
        {
            var blobSettings =
                AzureBlobSnapshotStoreSettings.Create(
                    ConfigurationFactory.ParseString(@"akka.persistence.snapshot-store.azure-blob-store{
                        connection-string = foo
                        container-name = bar
                    }").WithFallback(AzurePersistence.DefaultConfig)
                    .GetConfig("akka.persistence.snapshot-store.azure-blob-store"));

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