diff options
author | Anton Khirnov <anton@khirnov.net> | 2020-03-04 22:18:15 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2020-03-04 22:18:15 +0100 |
commit | d98af2606e888f4c09c1deb13c6276556d896af5 (patch) | |
tree | b4c0ed5966308d20131e5505f20cee2f08ca1518 /alot/db/message.py | |
parent | 238be3bafed5c9f4aa8015c85ffe429fb698443a (diff) |
db/utils: drop extract_headers()
It is used in only one place and does something so extremely simple it
does not need to be a special imported function.
Diffstat (limited to 'alot/db/message.py')
-rw-r--r-- | alot/db/message.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/alot/db/message.py b/alot/db/message.py index c055aeb2..7b7187e0 100644 --- a/alot/db/message.py +++ b/alot/db/message.py @@ -17,6 +17,22 @@ from ..settings.const import settings charset.add_charset('utf-8', charset.QP, charset.QP, 'utf-8') +class _MessageHeaders: + _msg = None + + def __init__(self, msg): + self._msg = msg + + def __getitem__(self, key): + if not key in self._msg: + raise KeyError(key) + return self._msg.get_all(key) + + def keys(self): + return self._msg.keys() + + def items(self): + return self._msg.items() class Message: """ @@ -49,6 +65,11 @@ class Message: """ parent = None + """ + The object providing access to the email's headers. + """ + headers = None + def __init__(self, dbman, thread, msg, depth): """ :param dbman: db manager that is used for further lookups @@ -84,6 +105,8 @@ class Message: self._email = self._load_email(session_keys) + self.headers = _MessageHeaders(self._email) + self._attachments = None # will be read upon first use self._tags = set(msg.get_tags()) |