public GitDiffViewModel(IDbObjectText DbObjectText, IIDEProvider IDE, IGitAPI Git, IWarnings Warnings, ISettings Settings) { _DbObjectText = DbObjectText; IDiffText DiffText = Git.GitDiff(DbObjectText); FillDocument(DiffText); CurrentBranch = Git.GetCurrentBranch(); CurrentDataBase = IDE.GetDatabaseConnection(); ObjectDescrName = DbObjectText.DescriptionName; ObjectFullPath = DbObjectText.GetRawFilePath(); if (Settings.UnexpectedBranch) { UnexpectedBranch = Warnings.IsBranchUnexsepted(CurrentBranch, true); } if (Settings.UnexpectedServer) { UnexpectedServer = Warnings.IsServerUnexsepted(CurrentDataBase, true); } SaveTextCommand = NinjectCore.Get <CommandSaveTextToRepository>(); LoadTextCommand = NinjectCore.Get <CommandLoadTextFromRepository>(); ButtonsClassicStyle = Settings.ClassicButtonsPosition; }
private void LoadText() { if (_DbObjectText == null) { _DbObjectText = _IDEProvider.GetDbObject <IDbObjectText>(); } else { _DbObjectText.DirectoriesChecks(); } if (_ServerName == null) { _ServerName = _IDEProvider.GetDatabaseConnection(); } if (_Warnings.IsServerUnexsepted(_ServerName)) { return; } string FilePath = _DbObjectText.GetRawFilePath(); Seri.Log.Here().Debug("FilePath={0}", FilePath); string LocalText = File.ReadAllText(FilePath); _PlsqlCodeFormatter.RemoveSlash(ref LocalText); _IDEProvider.SetText(LocalText); _IDEProvider.SetStatusMessage($"Объект БД загружен из: {FilePath}"); }