Source code for uw.local.outgoing.cursor
"""Cursor class for Outgoing mail sending.
Inherits from the usual cursor class with added methods for commonly-needed
queries.
"""
from uw.local.dbtools import Cursor
from uw.sql.dbapi import *
[docs]class Cursor (Cursor):
get_message = make_execute_optional_tuple ("SELECT mmts.* FROM mail_message_to_send AS mmts JOIN mail_message AS mm USING (msg_id) ORDER BY completed DESC LIMIT 1 FOR UPDATE OF mm SKIP LOCKED")
get_message_by_id = make_execute_optional_tuple ("SELECT * FROM mail_message_current_status WHERE msg_id=%(msg_id)s")
mark_message_sent = make_execute_none ("INSERT INTO mail_message_sent (msg_id) VALUES (%(msg_id)s)")
get_recipients = make_execute_tuples ("SELECT recipient_type, recipient_email, recipient_name FROM mail_recipient WHERE msg_id = %(msg_id)s")
get_attachments = make_execute_tuples ("SELECT * FROM mail_attachment WHERE msg_id = %(msg_id)s ORDER BY sequence")