/// <summary>
        /// Constructor for the saga snapshot factory for unit testing
        /// </summary>
        public GoogleCloudStorageSagaSnapshotStorageFactory()
        {
            _connectionInfo = GoogleCloudStorageConnectionInfoUtil.ConnectionInfo.Value;
            var storageClient = StorageClient.Create();
            var options       = new GoogleCloudStorageSagaSnapshotOptions(_connectionInfo.ProjectId, _connectionInfo.BucketName);

            _storage = new GoogleCloudStorageSagaSnapshotStorage(storageClient, new ConsoleLoggerFactory(false), options);
        }
        public void ConfigureSagaSnapshots()
        {
            // Use a single instance of the storage client
            var storageClient = StorageClient.Create();

            var activator = new BuiltinHandlerActivator();

            Using(activator);

            Configure.With(activator)
            .Transport(t => t.UseInMemoryTransport(new InMemNetwork(), "api"))
            .Sagas(s => s.StoreInMemory())
            .Options(o =>
            {
                var options = new GoogleCloudStorageSagaSnapshotOptions("my-project-id", "my-bucket")
                {
                    DoNotUpdateLastReadTime = true,
                    AutoCreateBucket        = false,
                    ObjectKeyPrefix         = "my-snapshots-folder/",
                };
                o.EnableSagaAuditing().StoreInGoogleCloudStorage(storageClient, options);
            })
            .Start();
        }