diff options
author | Ruben Pollan <meskio@sindominio.net> | 2015-03-30 22:46:18 +0200 |
---|---|---|
committer | Ruben Pollan <meskio@sindominio.net> | 2015-03-30 22:46:18 +0200 |
commit | d64fb189cc7c05272e0558085740efd8df2598dd (patch) | |
tree | 7bb82a2ff750c5dd830201a2aa730e29eabf7168 /src/leap/mail/utils.py | |
parent | 1568761f4fa7a7f8a9b0caec79ed2552b6c73ba7 (diff) | |
parent | 8e916eeadfcd76d50b54a2621d789e6a296dcce6 (diff) |
Merge branch 'kali/bug/several-mime-fixes' into develop
Diffstat (limited to 'src/leap/mail/utils.py')
-rw-r--r-- | src/leap/mail/utils.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/leap/mail/utils.py b/src/leap/mail/utils.py index 8e51024..029e9f5 100644 --- a/src/leap/mail/utils.py +++ b/src/leap/mail/utils.py @@ -351,3 +351,24 @@ def json_loads(data): obj = json.loads(data, cls=json.JSONDecoder) return obj + + +class CaseInsensitiveDict(dict): + """ + A dictionary subclass that will allow case-insenstive key lookups. + """ + def __init__(self, d=None): + if d is None: + d = [] + if isinstance(d, dict): + for key, value in d.items(): + self[key] = value + else: + for key, value in d: + self[key] = value + + def __setitem__(self, key, value): + super(CaseInsensitiveDict, self).__setitem__(key.lower(), value) + + def __getitem__(self, key): + return super(CaseInsensitiveDict, self).__getitem__(key.lower()) |