Upgrade Lightning lib; add and pass cancellation tokens in Greenfield

This commit is contained in:
Dennis Reimann 2022-05-18 15:22:08 +02:00 committed by Andrew Camilleri
parent 5328303c32
commit 5a4b675791
5 changed files with 17 additions and 17 deletions

View file

@ -28,8 +28,8 @@
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="BTCPayServer.Lightning.Common" Version="1.3.4" />
<PackageReference Include="NBitcoin" Version="7.0.1" />
<PackageReference Include="BTCPayServer.Lightning.Common" Version="1.3.3" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
</ItemGroup>
<ItemGroup>

View file

@ -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<IActionResult> ConnectToNode(string cryptoCode, ConnectToNodeRequest request)
public override Task<IActionResult> 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<IActionResult> GetDepositAddress(string cryptoCode)
public override Task<IActionResult> GetDepositAddress(string cryptoCode, CancellationToken cancellationToken = default)
{
return base.GetDepositAddress(cryptoCode);
return base.GetDepositAddress(cryptoCode, cancellationToken);
}
[Authorize(Policy = Policies.CanUseInternalLightningNode,

View file

@ -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<IActionResult> ConnectToNode(string cryptoCode, ConnectToNodeRequest request)
public override Task<IActionResult> 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<IActionResult> GetDepositAddress(string cryptoCode)
public override Task<IActionResult> GetDepositAddress(string cryptoCode, CancellationToken cancellationToken = default)
{
return base.GetDepositAddress(cryptoCode);
return base.GetDepositAddress(cryptoCode, cancellationToken);
}
[Authorize(Policy = Policies.CanUseLightningNodeInStore,

View file

@ -48,7 +48,7 @@ namespace BTCPayServer.Controllers.Greenfield
});
}
public virtual async Task<IActionResult> ConnectToNode(string cryptoCode, ConnectToNodeRequest request)
public virtual async Task<IActionResult> 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<IActionResult> GetDepositAddress(string cryptoCode)
public virtual async Task<IActionResult> 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<IActionResult> GetPayment(string cryptoCode, string paymentHash, CancellationToken cancellationToken = default)

View file

@ -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<IEnumerable<LightningChannelData>> GetLightningNodeChannels(string storeId,
@ -516,7 +516,7 @@ namespace BTCPayServer.Controllers.Greenfield
CancellationToken token = default)
{
return GetFromActionResult<string>(
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<IEnumerable<LightningChannelData>> GetLightningNodeChannels(string cryptoCode,
@ -569,7 +569,7 @@ namespace BTCPayServer.Controllers.Greenfield
CancellationToken token = default)
{
return GetFromActionResult<string>(
await _lightningNodeApiController.GetDepositAddress(cryptoCode));
await _lightningNodeApiController.GetDepositAddress(cryptoCode, token));
}
public override async Task<LightningPaymentData> PayLightningInvoice(string cryptoCode,