renamed SendMailMessage -> Message; distinguish between wrapping as MIMEText and encoding; added repr
This commit is contained in:
14
sendmail.py
14
sendmail.py
@@ -8,13 +8,13 @@ OUTPUT_DIVIDER_BAR = "=" * len(OUTPUT_DIVIDER)
|
||||
|
||||
|
||||
def sendmail(to_addr, from_addr=None, subject=None, body=None):
|
||||
msg = SendMailMessage(to_addr, from_addr=from_addr, subject=subject, body=body)
|
||||
msg = Message(to_addr, from_addr=from_addr, subject=subject, body=body)
|
||||
msg.send()
|
||||
return msg
|
||||
|
||||
|
||||
|
||||
class SendMailMessage:
|
||||
class Message:
|
||||
|
||||
def __init__(self, to_addr, from_addr=None, subject=None, body=None):
|
||||
self.to_addr = to_addr
|
||||
@@ -26,8 +26,14 @@ class SendMailMessage:
|
||||
msg = self.encode()
|
||||
_run_sendmail(msg)
|
||||
|
||||
|
||||
def encode(self, *args, **kwargs):
|
||||
return self.wrap().as_bytes(*args, **kwargs)
|
||||
|
||||
def __repr__(self):
|
||||
return self.wrap().as_string()
|
||||
|
||||
|
||||
def wrap(self):
|
||||
from_addr = self.from_addr
|
||||
if from_addr is None:
|
||||
from_addr = getpass.getuser()
|
||||
@@ -40,7 +46,7 @@ class SendMailMessage:
|
||||
msg["To"] = self.to_addr
|
||||
msg["From"] = from_addr
|
||||
msg["Subject"] = self.subject
|
||||
return msg.as_bytes(*args, **kwargs)
|
||||
return msg
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user