/// <inheritdoc/>
 public virtual void Purge()
 {
     Logger.LogWarning(Messages.PurgingStorage);
     // @@review -> drop & create?
     PersistedCommits.DeleteMany(Builders <BsonDocument> .Filter.Empty);
     PersistedStreamHeads.DeleteMany(Builders <BsonDocument> .Filter.Empty);
     PersistedSnapshots.DeleteMany(Builders <BsonDocument> .Filter.Empty);
 }
 /// <inheritdoc/>
 public void Purge(string bucketId)
 {
     Logger.LogWarning(Messages.PurgingBucket, bucketId);
     TryMongo(() =>
     {
         PersistedStreamHeads.DeleteMany(Builders <BsonDocument> .Filter.Eq(MongoStreamHeadFields.FullQualifiedBucketId, bucketId));
         PersistedSnapshots.DeleteMany(Builders <BsonDocument> .Filter.Eq(MongoShapshotFields.FullQualifiedBucketId, bucketId));
         PersistedCommits.DeleteMany(Builders <BsonDocument> .Filter.Eq(MongoCommitFields.BucketId, bucketId));
     });
 }