//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
//
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlTools.ServiceLayer.Admin;
using Microsoft.SqlTools.ServiceLayer.DisasterRecovery.Contracts;
using System.Data.SqlClient;
namespace Microsoft.SqlTools.ServiceLayer.DisasterRecovery
{
///
/// Interface for backup operations
///
public interface IBackupOperation
{
///
/// Initialize
///
///
///
void Initialize(CDataContainer dataContainer, SqlConnection sqlConnection);
///
/// Return database metadata for backup
///
///
///
BackupConfigInfo GetBackupConfigInfo(string databaseName);
///
/// Set backup input properties
///
///
void SetBackupInput(BackupInfo input);
///
/// Execute backup
///
void PerformBackup();
///
/// Cancel backup
///
void CancelBackup();
}
}