Files
btcpayserver-breez-nodeless…/BTCPayServer.Plugins.Breez/BreezLightningConnectionStringHandler.cs
2025-12-08 11:45:58 +01:00

34 lines
933 B
C#

using BTCPayServer.Lightning;
using NBitcoin;
namespace BTCPayServer.Plugins.Breez;
public class BreezLightningConnectionStringHandler : ILightningConnectionStringHandler
{
private readonly BreezService _breezService;
public BreezLightningConnectionStringHandler(BreezService breezService)
{
_breezService = breezService;
}
public ILightningClient? Create(string connectionString, Network network, out string? error)
{
var kv = LightningConnectionStringHelper.ExtractValues(connectionString, out var type);
if (type != "breez")
{
error = null;
return null;
}
if (!kv.TryGetValue("key", out var key))
{
error = $"The key 'key' is mandatory for breez connection strings";
return null;
}
error = null;
return _breezService.GetClientByPaymentKey(key);
}
}