mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2026-01-05 23:24:27 +01:00
Cleaning up Webhooks code
This commit is contained in:
@@ -8,31 +8,25 @@ using WebhookDeliveryData = BTCPayServer.Data.WebhookDeliveryData;
|
||||
|
||||
namespace BTCPayServer.HostedServices.Webhooks;
|
||||
|
||||
public class PaymentRequestWebhookProvider: WebhookProvider<PaymentRequestEvent>
|
||||
public class PaymentRequestWebhookProvider(EventAggregator eventAggregator, ILogger<PaymentRequestWebhookProvider> logger, WebhookSender webhookSender)
|
||||
: WebhookProvider<PaymentRequestEvent>(eventAggregator, logger, webhookSender)
|
||||
{
|
||||
public PaymentRequestWebhookProvider(EventAggregator eventAggregator, ILogger<PaymentRequestWebhookProvider> logger, WebhookSender webhookSender) : base(eventAggregator, logger, webhookSender)
|
||||
{
|
||||
}
|
||||
|
||||
public override Dictionary<string, string> GetSupportedWebhookTypes()
|
||||
{
|
||||
return new Dictionary<string, string>()
|
||||
return new Dictionary<string, string>
|
||||
{
|
||||
{WebhookEventType.PaymentRequestCreated, "Payment Request - Created"},
|
||||
{WebhookEventType.PaymentRequestUpdated, "Payment Request - Updated"},
|
||||
{WebhookEventType.PaymentRequestArchived, "Payment Request - Archived"},
|
||||
{WebhookEventType.PaymentRequestStatusChanged, "Payment Request - Status Changed"},
|
||||
{WebhookEventType.PaymentRequestCompleted, "Payment Request - Completed"},
|
||||
{ WebhookEventType.PaymentRequestCreated, "Payment Request - Created" },
|
||||
{ WebhookEventType.PaymentRequestUpdated, "Payment Request - Updated" },
|
||||
{ WebhookEventType.PaymentRequestArchived, "Payment Request - Archived" },
|
||||
{ WebhookEventType.PaymentRequestStatusChanged, "Payment Request - Status Changed" },
|
||||
{ WebhookEventType.PaymentRequestCompleted, "Payment Request - Completed" }
|
||||
};
|
||||
}
|
||||
|
||||
public override WebhookEvent CreateTestEvent(string type, object[] args)
|
||||
{
|
||||
var storeId = args[0].ToString();
|
||||
return new WebhookPaymentRequestEvent(type, storeId)
|
||||
{
|
||||
PaymentRequestId = "__test__" + Guid.NewGuid() + "__test__"
|
||||
};
|
||||
string storeId = args[0].ToString();
|
||||
return new WebhookPaymentRequestEvent(type, storeId) { PaymentRequestId = "__test__" + Guid.NewGuid() + "__test__" };
|
||||
}
|
||||
|
||||
protected override WebhookPaymentRequestEvent GetWebhookEvent(PaymentRequestEvent evt)
|
||||
@@ -50,20 +44,21 @@ public class PaymentRequestWebhookProvider: WebhookProvider<PaymentRequestEvent>
|
||||
|
||||
protected override WebhookSender.WebhookDeliveryRequest CreateDeliveryRequest(PaymentRequestEvent paymentRequestEvent, WebhookData webhook)
|
||||
{
|
||||
var webhookBlob = webhook?.GetBlob();
|
||||
var webhookEvent = GetWebhookEvent(paymentRequestEvent)!;
|
||||
WebhookBlob webhookBlob = webhook?.GetBlob();
|
||||
WebhookPaymentRequestEvent webhookEvent = GetWebhookEvent(paymentRequestEvent)!;
|
||||
webhookEvent.StoreId = paymentRequestEvent.Data.StoreDataId;
|
||||
webhookEvent.PaymentRequestId = paymentRequestEvent.Data.Id;
|
||||
webhookEvent.Status = paymentRequestEvent.Data.Status;
|
||||
webhookEvent.WebhookId = webhook?.Id;
|
||||
webhookEvent.IsRedelivery = false;
|
||||
WebhookDeliveryData delivery = webhook is null? null: WebhookExtensions.NewWebhookDelivery(webhook.Id);
|
||||
WebhookDeliveryData delivery = webhook is null ? null : WebhookExtensions.NewWebhookDelivery(webhook.Id);
|
||||
if (delivery is not null)
|
||||
{
|
||||
webhookEvent.DeliveryId = delivery.Id;
|
||||
webhookEvent.OriginalDeliveryId = delivery.Id;
|
||||
webhookEvent.Timestamp = delivery.Timestamp;
|
||||
}
|
||||
return new PaymentRequestWebhookDeliveryRequest(paymentRequestEvent,webhook?.Id, webhookEvent, delivery, webhookBlob );
|
||||
|
||||
return new PaymentRequestWebhookDeliveryRequest(paymentRequestEvent, webhook?.Id, webhookEvent, delivery, webhookBlob);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user