Files
DP44/Common/DTS.Common/Interface/Database/IDatabaseCopyViewModel.cs
2026-04-17 14:55:32 -04:00

45 lines
1.5 KiB
C#

using DTS.Common.Base;
using DTS.Common.Enums.Database;
namespace DTS.Common.Interface.Database
{
/// <summary>
/// this viewmodel provides a way for transferring a remote database to a local database
/// it clears the local database and populates it with the remote databse
/// it requires a local database that has the right tables and stored procedures already
/// </summary>
public interface IDatabaseCopyViewModel : IBaseViewModel
{
/// <summary>
/// the view associated with the model
/// </summary>
IDatabaseCopyView View { get; set; }
/// <summary>
/// frees up any memory associated with viewmodel
/// </summary>
void Unset();
/// <summary>
/// copies from remote database to local database
/// uses DTS.Common.Storage to determine local and remote
/// </summary>
void CopyDatabase();
/// <summary>
/// initializes viewmodel state
/// </summary>
void InitializeState(DbType dbType, string dbName);
string DbName { get; }
/// <summary>
/// the overall status/progress
/// </summary>
IStatusAndProgressBarView OverallProgressBarView { get; }
/// <summary>
/// current task status/progress
/// </summary>
IStatusAndProgressBarView CurrentTaskProgressBarView { get; }
DbType DatabaseType { get; }
bool CopyEnabled { get; }
bool IsCopyVisible { get; set; }
}
}