Delete an entities.Webhook
(ctx context.Context, userID entities.UserID, webhookID uuid.UUID)
| 88 | |
| 89 | // Delete an entities.Webhook |
| 90 | func (service *WebhookService) Delete(ctx context.Context, userID entities.UserID, webhookID uuid.UUID) error { |
| 91 | ctx, span := service.tracer.Start(ctx) |
| 92 | defer span.End() |
| 93 | |
| 94 | ctxLogger := service.tracer.CtxLogger(service.logger, span) |
| 95 | |
| 96 | if _, err := service.repository.Load(ctx, userID, webhookID); err != nil { |
| 97 | msg := fmt.Sprintf("cannot load webhook with userID [%s] and phoneID [%s]", userID, webhookID) |
| 98 | return service.tracer.WrapErrorSpan(span, stacktrace.PropagateWithCode(err, stacktrace.GetCode(err), msg)) |
| 99 | } |
| 100 | |
| 101 | if err := service.repository.Delete(ctx, userID, webhookID); err != nil { |
| 102 | msg := fmt.Sprintf("cannot delete webhook with id [%s] and user id [%s]", webhookID, userID) |
| 103 | return service.tracer.WrapErrorSpan(span, stacktrace.Propagate(err, msg)) |
| 104 | } |
| 105 | |
| 106 | ctxLogger.Info(fmt.Sprintf("deleted webhook with id [%s] and user id [%s]", webhookID, userID)) |
| 107 | return nil |
| 108 | } |
| 109 | |
| 110 | // WebhookStoreParams are parameters for creating a new entities.Webhook |
| 111 | type WebhookStoreParams struct { |