diff options
| author | Barry Warsaw | 2009-02-22 21:33:17 -0500 |
|---|---|---|
| committer | Barry Warsaw | 2009-02-22 21:33:17 -0500 |
| commit | 2d2d5393acc7db23baf4f3d43a0712bfa795c03e (patch) | |
| tree | f7a41025dde055777aa1b4dd900fad4fc96c3943 /src/mailman/interfaces/mailinglist.py | |
| parent | 8644b80168066c8fd11a7e2440ed8566453f0cd4 (diff) | |
| download | mailman-2d2d5393acc7db23baf4f3d43a0712bfa795c03e.tar.gz mailman-2d2d5393acc7db23baf4f3d43a0712bfa795c03e.tar.zst mailman-2d2d5393acc7db23baf4f3d43a0712bfa795c03e.zip | |
Get rid of one_last_digest. Move this into a separate OneLastDigest table.
Make it explicit to get the last digest (I could imagine an user selecting not
to). Actually add tests for this.
Start to get rid of 'from storm.locals import *' in favor of more specific
imports. Start to use Store.of() instead of config.db.store where we can.
Rework (delivery)MemberRosters to use the Member attributes. This ensures
that the layered lookup happens at the expense of query optimization.
Sundry and various cleanups.
Diffstat (limited to 'src/mailman/interfaces/mailinglist.py')
| -rw-r--r-- | src/mailman/interfaces/mailinglist.py | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/src/mailman/interfaces/mailinglist.py b/src/mailman/interfaces/mailinglist.py index 2885f60ab..4e04fa39b 100644 --- a/src/mailman/interfaces/mailinglist.py +++ b/src/mailman/interfaces/mailinglist.py @@ -216,25 +216,30 @@ class IMailingList(Interface): the digest volume number is bumped, the digest number is reset to 1.""") - message_count = Attribute( - """The number of messages in the digest currently being collected.""") - digest_size_threshold = Attribute( """The maximum (approximate) size in kilobytes of the digest currently being collected.""") - messages = Attribute( - """An iterator over all the messages in the digest currently being - created. Returns individual IPostedMessage objects. - """) + def send_one_last_digest_to(address, delivery_mode): + """Make sure to send one last digest to an address. + + This is used when a person transitions from digest delivery to regular + delivery and wants to make sure they don't miss anything. By + indicating that they'd like to receive one last digest, they will + ensure continuity in receiving mailing lists posts. - limits = Attribute( - """An iterator over the IDigestLimiters associated with this digest. - Each limiter can make a determination of whether the digest has - reached the threshold for being automatically sent.""") + :param address: The address of the person receiving one last digest. + :type address: `IAddress` + :param delivery_mode: The type of digest to receive. + :type delivery_mode: `DeliveryMode` + """ + + last_digest_recipients = Attribute( + """An iterator over the addresses that should receive one last digest. - def send(): - """Send this digest now.""" + Items are 2-tuples of (`IAddress`, `DeliveryMode`). The one last + digest recipients are cleared. + """) decorators = Attribute( """An iterator over all the IDecorators associated with this digest. |
