aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCôme Chilliet <come.chilliet@nextcloud.com>2024-09-09 14:39:41 +0200
committerCôme Chilliet <come.chilliet@nextcloud.com>2024-09-09 14:39:41 +0200
commit4fc8aa5a060675d65379db0abb50cbd9c93b4f5a (patch)
tree3abdcd6448ccf3e83dc5d31f111d6f8dd1a39821
parent00712c22b32589b24fc8637ca3dc8816c37b503e (diff)
downloadnextcloud-server-4fc8aa5a060675d65379db0abb50cbd9c93b4f5a.tar.gz
nextcloud-server-4fc8aa5a060675d65379db0abb50cbd9c93b4f5a.zip
feat(webhook_listeners): Add mapper method to remove all registrations from a given AppAPI id
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
-rw-r--r--apps/webhook_listeners/lib/Db/WebhookListenerMapper.php15
1 files changed, 15 insertions, 0 deletions
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
@@ -160,6 +160,21 @@ class WebhookListenerMapper extends QBMapper {
}
/**
+ * 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<string>
*/