Files
jdescopingtool/NEW/src/Utils/JdeScoping.ConfigManager/Services/IConfigFileService.cs
T
Joseph Doherty d49330e697 docs: add XML documentation and ConfigManager implementation plans
Add comprehensive XML documentation (param/returns tags) across 132 source
files to improve IntelliSense and API discoverability. Include ConfigManager
design documents and implementation plans for phases 1-9.
2026-01-20 02:26:26 -05:00

42 lines
2.0 KiB
C#

using JdeScoping.ConfigManager.Models;
namespace JdeScoping.ConfigManager.Services;
/// <summary>
/// Service for loading and saving configuration files.
/// </summary>
public interface IConfigFileService
{
/// <summary>
/// Loads the application settings configuration from the specified file path.
/// </summary>
/// <param name="path">The file path to load appsettings from.</param>
/// <param name="ct">Cancellation token for the operation.</param>
/// <returns>The loaded configuration model or a new empty model if deserialization fails.</returns>
Task<ConfigModel> LoadAppSettingsAsync(string path, CancellationToken ct = default);
/// <summary>
/// Loads the pipelines configuration from the specified file path.
/// </summary>
/// <param name="path">The file path to load pipelines from.</param>
/// <param name="ct">Cancellation token for the operation.</param>
/// <returns>The loaded pipelines configuration model or a new empty model if deserialization fails.</returns>
Task<PipelinesConfigModel> LoadPipelinesAsync(string path, CancellationToken ct = default);
/// <summary>
/// Saves the application settings configuration to the specified file path.
/// </summary>
/// <param name="path">The file path to save appsettings to.</param>
/// <param name="config">The configuration model to save.</param>
/// <param name="ct">Cancellation token for the operation.</param>
Task SaveAppSettingsAsync(string path, ConfigModel config, CancellationToken ct = default);
/// <summary>
/// Saves the pipelines configuration to the specified file path.
/// </summary>
/// <param name="path">The file path to save pipelines to.</param>
/// <param name="config">The pipelines configuration model to save.</param>
/// <param name="ct">Cancellation token for the operation.</param>
Task SavePipelinesAsync(string path, PipelinesConfigModel config, CancellationToken ct = default);
}