using DTS.Common.Base; using DTS.Common.Enums.Database; namespace DTS.Common.Interface.Database { /// /// 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 /// public interface IDatabaseCopyViewModel : IBaseViewModel { /// /// the view associated with the model /// IDatabaseCopyView View { get; set; } /// /// frees up any memory associated with viewmodel /// void Unset(); /// /// copies from remote database to local database /// uses DTS.Common.Storage to determine local and remote /// void CopyDatabase(); /// /// initializes viewmodel state /// void InitializeState(DbType dbType, string dbName); string DbName { get; } /// /// the overall status/progress /// IStatusAndProgressBarView OverallProgressBarView { get; } /// /// current task status/progress /// IStatusAndProgressBarView CurrentTaskProgressBarView { get; } DbType DatabaseType { get; } bool CopyEnabled { get; } bool IsCopyVisible { get; set; } } }