summaryrefslogtreecommitdiff
path: root/src/mailman/model/requests.py
diff options
context:
space:
mode:
authorBarry Warsaw2017-01-09 05:37:13 +0000
committerBarry Warsaw2017-01-09 05:37:13 +0000
commit089fb5f5612f5b25fb5c3bea94d671c45ecea9df (patch)
treee077c807084e5f15ea92f4748ffa6bf7e2df92f7 /src/mailman/model/requests.py
parent609739ee390447a8feb99bb52d13c6e3f0bf3caa (diff)
parenta01ef2bac4d52da67e4be1fccc2634086aaa03e3 (diff)
downloadmailman-089fb5f5612f5b25fb5c3bea94d671c45ecea9df.tar.gz
mailman-089fb5f5612f5b25fb5c3bea94d671c45ecea9df.tar.zst
mailman-089fb5f5612f5b25fb5c3bea94d671c45ecea9df.zip
Diffstat (limited to 'src/mailman/model/requests.py')
-rw-r--r--src/mailman/model/requests.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mailman/model/requests.py b/src/mailman/model/requests.py
index c177388af..90d1c686c 100644
--- a/src/mailman/model/requests.py
+++ b/src/mailman/model/requests.py
@@ -23,6 +23,7 @@ from mailman.database.transaction import dbconnection
from mailman.database.types import Enum, SAUnicode
from mailman.interfaces.pending import IPendable, IPendings
from mailman.interfaces.requests import IListRequests, RequestType
+from mailman.model.pending import Pended, PendedKeyValue
from mailman.utilities.queries import QuerySequence
from pickle import dumps, loads
from public import public
@@ -139,6 +140,15 @@ class ListRequests:
getUtility(IPendings).confirm(request.data_hash)
store.delete(request)
+ @dbconnection
+ def clear(self, store):
+ for token, pendable in getUtility(IPendings).find(
+ mlist=self.mailing_list,
+ confirm=False):
+ pended = store.query(Pended).filter_by(token=token).first()
+ store.query(PendedKeyValue).filter_by(pended_id=pended.id).delete()
+ store.delete(pended)
+
class _Request(Model):
"""Table for mailing list hold requests."""