summaryrefslogtreecommitdiff
path: root/Lib/email/Text.py
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>2001-09-23 03:17:28 +0000
committerBarry Warsaw <barry@python.org>2001-09-23 03:17:28 +0000
commitba92580f01b47ba1468c382961ed5122654c2520 (patch)
tree413464c274da1a93dc99d0a1cf13baf9a99c3220 /Lib/email/Text.py
parentd61d0d3f6dbd960a761c05ff7fea848cb6490aa3 (diff)
downloadcpython-git-ba92580f01b47ba1468c382961ed5122654c2520.tar.gz
The email package version 1.0, prototyped as mimelib
<http://sf.net/projects/mimelib>. There /are/ API differences between mimelib and email, but most of the implementations are shared (except where cool Py2.2 stuff like generators are used).
Diffstat (limited to 'Lib/email/Text.py')
-rw-r--r--Lib/email/Text.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/Lib/email/Text.py b/Lib/email/Text.py
new file mode 100644
index 0000000000..5abfd0b1cf
--- /dev/null
+++ b/Lib/email/Text.py
@@ -0,0 +1,41 @@
+# Copyright (C) 2001 Python Software Foundation
+# Author: barry@zope.com (Barry Warsaw)
+
+"""Class representing text/* type MIME documents.
+"""
+
+import MIMEBase
+from Encoders import encode_7or8bit
+
+
+
+class Text(MIMEBase.MIMEBase):
+ """Class for generating text/* type MIME documents."""
+
+ def __init__(self, _text, _minor='plain', _charset='us-ascii',
+ _encoder=encode_7or8bit):
+ """Create a text/* type MIME document.
+
+ _text is the string for this message object. If the text does not end
+ in a newline, one is added.
+
+ _minor is the minor content type, defaulting to "plain".
+
+ _charset is the character set parameter added to the Content-Type:
+ header. This defaults to "us-ascii".
+
+ _encoder is a function which will perform the actual encoding for
+ transport of the text data. It takes one argument, which is this
+ Text instance. It should use get_payload() and set_payload() to
+ change the payload to the encoded form. It should also add any
+ Content-Transfer-Encoding: or other headers to the message as
+ necessary. The default encoding doesn't actually modify the payload,
+ but it does set Content-Transfer-Encoding: to either `7bit' or `8bit'
+ as appropriate.
+ """
+ MIMEBase.MIMEBase.__init__(self, 'text', _minor,
+ **{'charset': _charset})
+ if _text and _text[-1] <> '\n':
+ _text += '\n'
+ self.set_payload(_text)
+ _encoder(self)