SOMS/SolutionCleanupTool/Interfaces/ICleanupEngine.cs
2025-12-31 14:25:09 +08:00

33 lines
1.3 KiB
C#

using System.Collections.Generic;
using SolutionCleanupTool.Models;
namespace SolutionCleanupTool.Interfaces
{
/// <summary>
/// Interface for performing cleanup operations on solution files
/// </summary>
public interface ICleanupEngine
{
/// <summary>
/// Removes missing projects from a solution model
/// </summary>
/// <param name="solution">The solution model to clean</param>
/// <param name="missingProjects">List of missing projects to remove</param>
/// <returns>Result of the cleanup operation</returns>
CleanupResult RemoveMissingProjects(SolutionModel solution, List<MissingProject> missingProjects);
/// <summary>
/// Creates a backup of the original solution file
/// </summary>
/// <param name="solutionPath">Path to the solution file to backup</param>
/// <returns>Path to the created backup file</returns>
string CreateBackup(string solutionPath);
/// <summary>
/// Writes a solution model back to a file
/// </summary>
/// <param name="solution">The solution model to write</param>
/// <param name="outputPath">Path where to write the solution file</param>
void WriteSolution(SolutionModel solution, string outputPath);
}
}