mirror of
https://github.com/samsonjs/imapbackup.git
synced 2026-04-27 14:57:44 +00:00
Merge pull request #27 from mmachicao/path_option
Removed redundant call to get_hierarchy_delimiter
This commit is contained in:
commit
e60ad2c96b
1 changed files with 3 additions and 24 deletions
|
|
@ -357,31 +357,10 @@ def parse_list(row):
|
||||||
return [paren_list] + string_list
|
return [paren_list] + string_list
|
||||||
|
|
||||||
|
|
||||||
def get_hierarchy_delimiter(server):
|
|
||||||
"""Queries the imapd for the hierarchy delimiter, eg. '.' in INBOX.Sent"""
|
|
||||||
# see RFC 3501 page 39 paragraph 4
|
|
||||||
typ, data = server.list('', '')
|
|
||||||
assert(typ == 'OK')
|
|
||||||
assert(len(data) == 1)
|
|
||||||
|
|
||||||
data_str = str(data[0], 'utf-8')
|
|
||||||
lst = parse_list(data_str) # [attribs, hierarchy delimiter, root name]
|
|
||||||
hierarchy_delim = lst[1]
|
|
||||||
# NIL if there is no hierarchy
|
|
||||||
if 'NIL' == hierarchy_delim:
|
|
||||||
hierarchy_delim = '.'
|
|
||||||
return hierarchy_delim
|
|
||||||
|
|
||||||
|
|
||||||
def get_names(server, thunderbird, nospinner):
|
def get_names(server, thunderbird, nospinner):
|
||||||
"""Get list of folders, returns [(FolderName,FileName)]"""
|
"""Get list of folders, returns [(FolderName,FileName)]"""
|
||||||
|
|
||||||
spinner = Spinner("Finding Folders", nospinner)
|
spinner = Spinner("Finding Folders", nospinner)
|
||||||
|
|
||||||
# Get hierarchy delimiter
|
|
||||||
delim = get_hierarchy_delimiter(server)
|
|
||||||
spinner.spin()
|
|
||||||
|
|
||||||
# Get LIST of all folders
|
# Get LIST of all folders
|
||||||
typ, data = server.list()
|
typ, data = server.list()
|
||||||
assert(typ == 'OK')
|
assert(typ == 'OK')
|
||||||
|
|
@ -389,12 +368,12 @@ def get_names(server, thunderbird, nospinner):
|
||||||
|
|
||||||
names = []
|
names = []
|
||||||
|
|
||||||
# parse each LIST, find folder name
|
# parse each LIST entry for folder name hierarchy delimiter
|
||||||
for row in data:
|
for row in data:
|
||||||
row_str = str(row,'utf-8')
|
row_str = str(row,'utf-8')
|
||||||
lst = parse_list(row_str)
|
lst = parse_list(row_str) # [attribs, hierarchy delimiter, root name]
|
||||||
|
delim = lst[1]
|
||||||
foldername = lst[2]
|
foldername = lst[2]
|
||||||
#suffix = {'none': '', 'gzip': '.gz', 'bzip2': '.bz2'}[compress]
|
|
||||||
if thunderbird:
|
if thunderbird:
|
||||||
filename = '.sbd/'.join(foldername.split(delim))
|
filename = '.sbd/'.join(foldername.split(delim))
|
||||||
if filename.startswith("INBOX"):
|
if filename.startswith("INBOX"):
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue