private void SaveText() { if (_DbObjectText == null) { _DbObjectText = _IDEProvider.GetDbObject <IDbObjectText>(); } else { _DbObjectText.DirectoriesChecks(); } if (_BranchName == null) { _BranchName = _GitAPI.GetCurrentBranch(); } if (_Warnings.IsBranchUnexsepted(_BranchName)) { return; } string FilePath = _DbObjectText.GetRawFilePath(); Seri.Log.Here().Debug("FilePath={0}", FilePath); File.WriteAllText(FilePath, _DbObjectText.Text, _DbObjectText.GetSaveEncoding()); _IDEProvider.SetStatusMessage($"Объект БД сохранён в: {FilePath}"); }
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}"); }
protected override void BeforeProcess() { tmpPath = $"{_dbObj.GetRawFilePath()}.tmp"; Seri.Log.Here().Debug($"Создаём временный файл. path: {tmpPath}"); File.WriteAllText(tmpPath, _dbObj.Text, _dbObj.GetSaveEncoding()); Seri.Log.Here().Debug("Временный файл создан"); AddArgument("diff"); AddArgumentCrAtEol(); AddArgumentSpaceAtEol(); AddArgument("--no-index"); AddArgument($"\"{_dbObj.GetRawFilePath()}\""); AddArgument($"\"{tmpPath}\""); base.BeforeProcess(); }