public FailedMergePostAction(string fileName, string filePath, string failedFileName, string description, MergeFailureType mergeFailureType) { FileName = fileName; FilePath = filePath; FailedFileName = failedFileName; Description = description; MergeFailureType = mergeFailureType; }
protected void AddFailedMergePostActions(string originalFilePath, MergeFailureType mergeFailureType, string description) { var sourceFileName = GetRelativePath(originalFilePath); var postactionFileName = GetRelativePath(Config.FilePath); var failedFileName = GetFailedPostActionFileName(); GenContext.Current.FailedMergePostActions.Add(new FailedMergePostAction(sourceFileName, Config.FilePath, failedFileName, description, mergeFailureType)); File.Copy(Config.FilePath, failedFileName, true); }
public void HandleFailedMergePostActions(string originalFileRelativePath, MergeFailureType mergeFailureType, string suffix, string errorMessage) { var validator = new List <Validator> { new FileExistsValidator(Path.GetDirectoryName(Config.FilePath)), }; // Change filename from .postaction to .failedpostaction, .failedpostaction1,... var splittedFileName = Path.GetFileName(Config.FilePath).Split('.'); splittedFileName[0] = Naming.Infer(splittedFileName[0].Replace(suffix, MergeConfiguration.FailedPostactionSuffix), validator); var failedFileName = Path.Combine(Path.GetDirectoryName(Config.FilePath), string.Join(".", splittedFileName)); Fs.SafeMoveFile(Config.FilePath, failedFileName); // Add info to context GenContext.Current.FailedMergePostActions.Add(new FailedMergePostActionInfo(originalFileRelativePath, Config.FilePath, failedFileName.GetPathRelativeToGenerationParentPath(), failedFileName, errorMessage, mergeFailureType)); }