From 4fc8aa5a060675d65379db0abb50cbd9c93b4f5a Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C3=B4me=20Chilliet?= Date: Mon, 9 Sep 2024 14:39:41 +0200 Subject: [PATCH] feat(webhook_listeners): Add mapper method to remove all registrations from a given AppAPI id MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Côme Chilliet --- .../lib/Db/WebhookListenerMapper.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/apps/webhook_listeners/lib/Db/WebhookListenerMapper.php b/apps/webhook_listeners/lib/Db/WebhookListenerMapper.php index a55a8c7f6a0..c0d96891ecc 100644 --- a/apps/webhook_listeners/lib/Db/WebhookListenerMapper.php +++ b/apps/webhook_listeners/lib/Db/WebhookListenerMapper.php @@ -159,6 +159,21 @@ class WebhookListenerMapper extends QBMapper { return ($qb->executeStatement() > 0); } + /** + * Delete all registrations made by the given appId + * + * @throws Exception + * @return int number of registration deleted + */ + public function deleteByAppId(string $appId): int { + $qb = $this->db->getQueryBuilder(); + + $qb->delete($this->getTableName()) + ->where($qb->expr()->eq('app_id', $qb->createNamedParameter($appId, IQueryBuilder::PARAM_STR))); + + return $qb->executeStatement(); + } + /** * @throws Exception * @return list -- 2.39.5