You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
670 B
25 lines
670 B
using System.IO.Abstractions;
|
|
using Recyclarr.Common.Extensions;
|
|
using Recyclarr.TrashLib.Config.Yaml;
|
|
|
|
namespace Recyclarr.TrashLib.Config.Parsing;
|
|
|
|
public class ConfigSaver
|
|
{
|
|
private readonly IYamlSerializerFactory _serializerFactory;
|
|
|
|
public ConfigSaver(IYamlSerializerFactory serializerFactory)
|
|
{
|
|
_serializerFactory = serializerFactory;
|
|
}
|
|
|
|
public void Save(RootConfigYaml config, IFileInfo destinationFile)
|
|
{
|
|
var serializer = _serializerFactory.CreateSerializer();
|
|
|
|
destinationFile.CreateParentDirectory();
|
|
using var stream = destinationFile.CreateText();
|
|
serializer.Serialize(stream, config);
|
|
}
|
|
}
|