mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2025-12-17 14:04:26 +01:00
Add basic Greenfield API Get and Delete operations for apps (#3894)
* Add basic Greenfield API Get and Delete operations for apps Will follow-up with PATCH and also with GET which returns more than just basic data later. This sets up the basic stuff first. * Add methods to LocalBTCPayServerClient
This commit is contained in:
@@ -20,11 +20,9 @@ using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.Extensions.Options;
|
||||
using NBitcoin;
|
||||
using NBXplorer.Models;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using InvoiceData = BTCPayServer.Client.Models.InvoiceData;
|
||||
using Language = BTCPayServer.Client.Models.Language;
|
||||
@@ -75,6 +73,8 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
private readonly GreenfieldStoreAutomatedLightningPayoutProcessorsController
|
||||
_greenfieldStoreAutomatedLightningPayoutProcessorsController;
|
||||
|
||||
private readonly GreenfieldAppsController _greenFieldAppsController;
|
||||
|
||||
private readonly IServiceProvider _serviceProvider;
|
||||
|
||||
public BTCPayServerClientFactory(StoreRepository storeRepository,
|
||||
@@ -106,6 +106,7 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
greenfieldStoreAutomatedOnChainPayoutProcessorsController,
|
||||
GreenfieldStoreAutomatedLightningPayoutProcessorsController
|
||||
greenfieldStoreAutomatedLightningPayoutProcessorsController,
|
||||
GreenfieldAppsController greenFieldAppsController,
|
||||
IServiceProvider serviceProvider)
|
||||
{
|
||||
_storeRepository = storeRepository;
|
||||
@@ -137,6 +138,7 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
greenfieldStoreAutomatedOnChainPayoutProcessorsController;
|
||||
_greenfieldStoreAutomatedLightningPayoutProcessorsController =
|
||||
greenfieldStoreAutomatedLightningPayoutProcessorsController;
|
||||
_greenFieldAppsController = greenFieldAppsController;
|
||||
_serviceProvider = serviceProvider;
|
||||
}
|
||||
|
||||
@@ -214,6 +216,7 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
_greenfieldPayoutProcessorsController,
|
||||
_greenfieldStoreAutomatedOnChainPayoutProcessorsController,
|
||||
_greenfieldStoreAutomatedLightningPayoutProcessorsController,
|
||||
_greenFieldAppsController,
|
||||
new LocalHttpContextAccessor() {HttpContext = context}
|
||||
);
|
||||
}
|
||||
@@ -259,6 +262,8 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
|
||||
private readonly GreenfieldStoreUsersController _greenfieldStoreUsersController;
|
||||
|
||||
private readonly GreenfieldAppsController _greenFieldAppsController;
|
||||
|
||||
public LocalBTCPayServerClient(
|
||||
IServiceProvider serviceProvider,
|
||||
GreenfieldStoreOnChainPaymentMethodsController chainPaymentMethodsController,
|
||||
@@ -287,6 +292,7 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
greenfieldStoreAutomatedOnChainPayoutProcessorsController,
|
||||
GreenfieldStoreAutomatedLightningPayoutProcessorsController
|
||||
greenfieldStoreAutomatedLightningPayoutProcessorsController,
|
||||
GreenfieldAppsController greenFieldAppsController,
|
||||
IHttpContextAccessor httpContextAccessor) : base(new Uri("https://dummy.local"), "", "")
|
||||
{
|
||||
_chainPaymentMethodsController = chainPaymentMethodsController;
|
||||
@@ -315,6 +321,7 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
greenfieldStoreAutomatedOnChainPayoutProcessorsController;
|
||||
_greenfieldStoreAutomatedLightningPayoutProcessorsController =
|
||||
greenfieldStoreAutomatedLightningPayoutProcessorsController;
|
||||
_greenFieldAppsController = greenFieldAppsController;
|
||||
|
||||
var controllers = new[]
|
||||
{
|
||||
@@ -1278,5 +1285,24 @@ namespace BTCPayServer.Controllers.Greenfield
|
||||
await _greenfieldPullPaymentController
|
||||
.GetStorePayouts(storeId, includeCancelled));
|
||||
}
|
||||
|
||||
public override async Task<PointOfSaleAppData> CreatePointOfSaleApp(
|
||||
string storeId,
|
||||
CreatePointOfSaleAppRequest request, CancellationToken token = default)
|
||||
{
|
||||
return GetFromActionResult<PointOfSaleAppData>(
|
||||
await _greenFieldAppsController.CreatePointOfSaleApp(storeId, request));
|
||||
}
|
||||
|
||||
public override async Task<AppDataBase> GetApp(string appId, CancellationToken token = default)
|
||||
{
|
||||
return GetFromActionResult<AppDataBase>(
|
||||
await _greenFieldAppsController.GetApp(appId));
|
||||
}
|
||||
|
||||
public override async Task DeleteApp(string appId, CancellationToken token = default)
|
||||
{
|
||||
HandleActionResult(await _greenFieldAppsController.DeleteApp(appId));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user