in Runtime/Core/SettingsManagement/SettingsStore.cs [115:158]
public ClearSettingResponse ClearSetting(ClearSettingRequest request)
{
if (string.IsNullOrEmpty(request.Key))
{
return Response.Fail(new ClearSettingResponse()
{
ErrorCode = ErrorCode.InvalidParameters
});
}
if (!_fileWrapper.FileExists(_settingsFilePath))
{
return Response.Fail(new ClearSettingResponse
{
ErrorCode = ErrorCode.NoSettingsFileFound
});
}
var input = new StringReader(_fileWrapper.ReadAllText(_settingsFilePath));
_yamlStreamWrapper.Load(input);
YamlMappingNode rootMappingNode = (_yamlStreamWrapper.GetDocuments().Count > 0) ? (YamlMappingNode)_yamlStreamWrapper.GetDocuments()[0].RootNode : default;
if (rootMappingNode == null)
{
return Response.Fail(new ClearSettingResponse()
{
ErrorCode = ErrorCode.InvalidSettingsFile
});
}
if (rootMappingNode.Children.ContainsKey(request.Key))
{
rootMappingNode.Children.Remove(request.Key);
using (TextWriter writer = _fileWrapper.CreateText(_settingsFilePath))
{
_yamlStreamWrapper.Save(writer, false);
}
}
return Response.Ok(new ClearSettingResponse());
}