summaryrefslogtreecommitdiff
path: root/src/mailman_pgp/workflows/base.py
diff options
context:
space:
mode:
authorJ08nY2017-08-06 02:51:44 +0200
committerJ08nY2017-08-06 02:51:44 +0200
commit009a60e504f9441aace4a490bfe811d0471e2dfd (patch)
tree865f9ccf63f2118a0262dacab508e99a4f316894 /src/mailman_pgp/workflows/base.py
parentb56debf2d3db0732e6fa4a3d22ecaaae78fc5b65 (diff)
downloadmailman-pgp-009a60e504f9441aace4a490bfe811d0471e2dfd.tar.gz
mailman-pgp-009a60e504f9441aace4a490bfe811d0471e2dfd.tar.zst
mailman-pgp-009a60e504f9441aace4a490bfe811d0471e2dfd.zip
Diffstat (limited to 'src/mailman_pgp/workflows/base.py')
-rw-r--r--src/mailman_pgp/workflows/base.py23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/mailman_pgp/workflows/base.py b/src/mailman_pgp/workflows/base.py
index 42515e2..82dd291 100644
--- a/src/mailman_pgp/workflows/base.py
+++ b/src/mailman_pgp/workflows/base.py
@@ -20,13 +20,28 @@ from public import public
from mailman_pgp.database import transaction
from mailman_pgp.model.address import PGPAddress
+from mailman_pgp.model.list import PGPMailingList
@public
class PGPMixin:
+ def __init__(self, mlist, pgp_address=None):
+ self.mlist = mlist
+ self.pgp_list = PGPMailingList.for_list(mlist)
+ self.pgp_address = pgp_address
+
+ @property
+ def address_key(self):
+ return self.pgp_address.email
+
+ @address_key.setter
+ def address_key(self, value):
+ self.pgp_address = PGPAddress.for_email(value)
+ self.member = self.mlist.regular_members.get_member(value)
+
def _step_pgp_prepare(self):
- pgp_address = PGPAddress.for_address(self.address)
- if pgp_address is None:
+ self.pgp_address = PGPAddress.for_address(self.address)
+ if self.pgp_address is None:
with transaction() as t:
- pgp_address = PGPAddress(self.address)
- t.add(pgp_address)
+ self.pgp_address = PGPAddress(self.address)
+ t.add(self.pgp_address)