diff --git a/BTCPayServer.Client/BTCPayServer.Client.csproj b/BTCPayServer.Client/BTCPayServer.Client.csproj
index d92e2bd7e..281d9cfc9 100644
--- a/BTCPayServer.Client/BTCPayServer.Client.csproj
+++ b/BTCPayServer.Client/BTCPayServer.Client.csproj
@@ -28,8 +28,8 @@
+
-
diff --git a/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Internal.cs b/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Internal.cs
index 318ad1f5f..1f14822ff 100644
--- a/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Internal.cs
+++ b/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Internal.cs
@@ -49,9 +49,9 @@ namespace BTCPayServer.Controllers.Greenfield
[Authorize(Policy = Policies.CanUseInternalLightningNode,
AuthenticationSchemes = AuthenticationSchemes.Greenfield)]
[HttpPost("~/api/v1/server/lightning/{cryptoCode}/connect")]
- public override Task ConnectToNode(string cryptoCode, ConnectToNodeRequest request)
+ public override Task ConnectToNode(string cryptoCode, ConnectToNodeRequest request, CancellationToken cancellationToken = default)
{
- return base.ConnectToNode(cryptoCode, request);
+ return base.ConnectToNode(cryptoCode, request, cancellationToken);
}
[Authorize(Policy = Policies.CanUseInternalLightningNode,
@@ -73,9 +73,9 @@ namespace BTCPayServer.Controllers.Greenfield
[Authorize(Policy = Policies.CanUseInternalLightningNode,
AuthenticationSchemes = AuthenticationSchemes.Greenfield)]
[HttpPost("~/api/v1/server/lightning/{cryptoCode}/address")]
- public override Task GetDepositAddress(string cryptoCode)
+ public override Task GetDepositAddress(string cryptoCode, CancellationToken cancellationToken = default)
{
- return base.GetDepositAddress(cryptoCode);
+ return base.GetDepositAddress(cryptoCode, cancellationToken);
}
[Authorize(Policy = Policies.CanUseInternalLightningNode,
diff --git a/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Store.cs b/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Store.cs
index da6af2330..660273317 100644
--- a/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Store.cs
+++ b/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.Store.cs
@@ -51,9 +51,9 @@ namespace BTCPayServer.Controllers.Greenfield
[Authorize(Policy = Policies.CanUseLightningNodeInStore,
AuthenticationSchemes = AuthenticationSchemes.Greenfield)]
[HttpPost("~/api/v1/stores/{storeId}/lightning/{cryptoCode}/connect")]
- public override Task ConnectToNode(string cryptoCode, ConnectToNodeRequest request)
+ public override Task ConnectToNode(string cryptoCode, ConnectToNodeRequest request, CancellationToken cancellationToken = default)
{
- return base.ConnectToNode(cryptoCode, request);
+ return base.ConnectToNode(cryptoCode, request, cancellationToken);
}
[Authorize(Policy = Policies.CanUseLightningNodeInStore,
AuthenticationSchemes = AuthenticationSchemes.Greenfield)]
@@ -73,9 +73,9 @@ namespace BTCPayServer.Controllers.Greenfield
[Authorize(Policy = Policies.CanUseLightningNodeInStore,
AuthenticationSchemes = AuthenticationSchemes.Greenfield)]
[HttpPost("~/api/v1/stores/{storeId}/lightning/{cryptoCode}/address")]
- public override Task GetDepositAddress(string cryptoCode)
+ public override Task GetDepositAddress(string cryptoCode, CancellationToken cancellationToken = default)
{
- return base.GetDepositAddress(cryptoCode);
+ return base.GetDepositAddress(cryptoCode, cancellationToken);
}
[Authorize(Policy = Policies.CanUseLightningNodeInStore,
diff --git a/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.cs b/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.cs
index bd1d16185..25e71f418 100644
--- a/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.cs
+++ b/BTCPayServer/Controllers/GreenField/GreenfieldLightningNodeApiController.cs
@@ -48,7 +48,7 @@ namespace BTCPayServer.Controllers.Greenfield
});
}
- public virtual async Task ConnectToNode(string cryptoCode, ConnectToNodeRequest request)
+ public virtual async Task ConnectToNode(string cryptoCode, ConnectToNodeRequest request, CancellationToken cancellationToken = default)
{
var lightningClient = await GetLightningClient(cryptoCode, true);
if (request?.NodeURI is null)
@@ -61,7 +61,7 @@ namespace BTCPayServer.Controllers.Greenfield
return this.CreateValidationError(ModelState);
}
- var result = await lightningClient.ConnectTo(request.NodeURI);
+ var result = await lightningClient.ConnectTo(request.NodeURI, cancellationToken);
switch (result)
{
case ConnectionResult.Ok:
@@ -156,10 +156,10 @@ namespace BTCPayServer.Controllers.Greenfield
return this.CreateAPIError(errorCode, errorMessage);
}
- public virtual async Task GetDepositAddress(string cryptoCode)
+ public virtual async Task GetDepositAddress(string cryptoCode, CancellationToken cancellationToken = default)
{
var lightningClient = await GetLightningClient(cryptoCode, true);
- return Ok(new JValue((await lightningClient.GetDepositAddress()).ToString()));
+ return Ok(new JValue((await lightningClient.GetDepositAddress(cancellationToken)).ToString()));
}
public virtual async Task GetPayment(string cryptoCode, string paymentHash, CancellationToken cancellationToken = default)
diff --git a/BTCPayServer/Controllers/GreenField/LocalBTCPayServerClient.cs b/BTCPayServer/Controllers/GreenField/LocalBTCPayServerClient.cs
index e28ff221f..d462fe66c 100644
--- a/BTCPayServer/Controllers/GreenField/LocalBTCPayServerClient.cs
+++ b/BTCPayServer/Controllers/GreenField/LocalBTCPayServerClient.cs
@@ -495,7 +495,7 @@ namespace BTCPayServer.Controllers.Greenfield
public override async Task ConnectToLightningNode(string storeId, string cryptoCode,
ConnectToNodeRequest request, CancellationToken token = default)
{
- HandleActionResult(await _storeLightningNodeApiController.ConnectToNode(cryptoCode, request));
+ HandleActionResult(await _storeLightningNodeApiController.ConnectToNode(cryptoCode, request, token));
}
public override async Task> GetLightningNodeChannels(string storeId,
@@ -516,7 +516,7 @@ namespace BTCPayServer.Controllers.Greenfield
CancellationToken token = default)
{
return GetFromActionResult(
- await _storeLightningNodeApiController.GetDepositAddress(cryptoCode));
+ await _storeLightningNodeApiController.GetDepositAddress(cryptoCode, token));
}
public override async Task PayLightningInvoice(string storeId, string cryptoCode,
@@ -549,7 +549,7 @@ namespace BTCPayServer.Controllers.Greenfield
public override async Task ConnectToLightningNode(string cryptoCode, ConnectToNodeRequest request,
CancellationToken token = default)
{
- HandleActionResult(await _lightningNodeApiController.ConnectToNode(cryptoCode, request));
+ HandleActionResult(await _lightningNodeApiController.ConnectToNode(cryptoCode, request, token));
}
public override async Task> GetLightningNodeChannels(string cryptoCode,
@@ -569,7 +569,7 @@ namespace BTCPayServer.Controllers.Greenfield
CancellationToken token = default)
{
return GetFromActionResult(
- await _lightningNodeApiController.GetDepositAddress(cryptoCode));
+ await _lightningNodeApiController.GetDepositAddress(cryptoCode, token));
}
public override async Task PayLightningInvoice(string cryptoCode,