public static RenameOptions Of(IRenameOptions options) { return(new RenameOptions() { PrepareProvider = options.PrepareProvider }); }
public static RenameOptions Of(IRenameOptions options, IEnumerable <IHandlerDescriptor> descriptors) { return(new RenameOptions() { PrepareProvider = options.PrepareProvider || descriptors.Any(z => z.HandlerType == typeof(IPrepareRenameHandler)), WorkDoneProgress = options.WorkDoneProgress }); }
public static RenameOptions Of(IRenameOptions options) { return(new RenameOptions() { PrepareProvider = options.PrepareProvider, WorkDoneProgress = options.WorkDoneProgress }); }
public static bool ValidateArguments(IRenameOptions options) { if (options.SolutionFile.IsEmpty() && !options.UseCsProj) { Log.Error( "Solution file is not set. Multiple solutions are not supported. If you have .csproj files only try to set --projects argument."); return(false); } return(true); }
public static void Cleanup(IRenameOptions options, Action onUpdate = null) { if (!options.Cleanup) { return; } Update .Folder.FilteredByName("bin", "obj") .Remove .At.Path(options.WorkingDirectory) .Folder.Recursively() .Itself .OnUpdate(onUpdate) .Run(options.Preview); }
public static void UpdateFoldersProjectsAndSolution(IRenameOptions options, Action onUpdate = null) { if (options.ReplaceFrom.IsNotEmpty() && options.ReplaceTo.IsNotEmpty()) { if (options.RenameFoldersAndFiles) { Update .Project .Name .At.Path(options.WorkingDirectory) .In .Solution(options.SolutionFile) .Replacing(options.ReplaceFrom, options.ReplaceTo) .Names .OnUpdate(onUpdate) .Run(options.Preview); Update .Folder .ReplaceText .At.Path(options.WorkingDirectory) .In .File.FilteredByName(options.Masks) .From(options.ReplaceFrom) .To(options.ReplaceTo) .Recursively() .OnUpdate(onUpdate) .Run(options.Preview); } if (options.ReplaceFileContent) { Update .Folder .ReplaceContent .At.Path(options.WorkingDirectory) .In .File.FilteredByName(options.Masks) .From(options.ReplaceFrom) .To(options.ReplaceTo) .Recursively() .OnUpdate(onUpdate) .Run(options.Preview); } } Update .Project .DefaultAssemblyName .At.Path(options.WorkingDirectory) .With .Project.FilteredByMask("*.csproj") .Names .OnUpdate(onUpdate) .Run(options.Preview); Update .Project .DefaultRootNamespace .At.Path(options.WorkingDirectory) .With .Project.FilteredByMask("*.csproj") .Names .OnUpdate(onUpdate) .Run(options.Preview); if (options.RenameFoldersAndFiles) { Update .Folder .Names .At.Path(options.WorkingDirectory) .With .Project.DeclaredInSolution(options.SolutionFile) .Names .OnUpdate(onUpdate) .Run(options.Preview); } if (options.ReplaceFrom.IsNotEmpty() && options.ReplaceTo.IsNotEmpty()) { if (options.RenameFoldersAndFiles) { Update .Folder .ReplaceText .At.Path(options.WorkingDirectory) .In .Folder.FilteredByName($"*{options.ReplaceFrom}*") .From(options.ReplaceFrom) .To(options.ReplaceTo) .Recursively() .OnUpdate(onUpdate) .Run(options.Preview); } if (options.ReplaceFileContent) { Update .Folder .ReplaceContent .At.Path(options.WorkingDirectory) .In .File.FilteredByName(Path.GetFileName(options.SolutionFile)) .From(options.ReplaceFrom) .To(options.ReplaceTo) .OnUpdate(onUpdate) .Run(options.Preview); } if (options.RenameFoldersAndFiles) { Update .Folder .ReplaceText .At.Path(options.WorkingDirectory) .In .File.FilteredByName(Path.GetFileName(options.SolutionFile)) .From(options.ReplaceFrom) .To(options.ReplaceTo) .Names .OnUpdate(onUpdate) .Run(options.Preview); } } }