public static void Restore(AppSettingsBasedConfiguration configuration, DatabaseRestoreRequest restoreRequest, Action <string> output) { var databaseDocumentPath = FindDatabaseDocument(restoreRequest.BackupLocation); if (File.Exists(databaseDocumentPath) == false) { throw new InvalidOperationException("Cannot restore when the Database.Document file is missing in the backup folder: " + restoreRequest.BackupLocation); } if (Directory.Exists(Path.Combine(restoreRequest.BackupLocation, "new"))) { throw new StorageNotSupportedException("Esent is no longer supported. Use Voron instead."); } if (!string.IsNullOrWhiteSpace(restoreRequest.DatabaseLocation)) { configuration.Core.DataDirectory = restoreRequest.DatabaseLocation; } using (var transactionalStorage = new TransactionalStorage(configuration, () => { }, () => { }, () => { }, () => { })) { transactionalStorage.Restore(restoreRequest, output); } }