source: titan/mediathek/localhoster/lib/python2.7/dircache.py @ 40114

Last change on this file since 40114 was 40094, checked in by obi, 5 years ago

tithek add yoztube-dl support

File size: 1.1 KB
Line 
1"""Read and cache directory listings.
2
3The listdir() routine returns a sorted list of the files in a directory,
4using a cache to avoid reading the directory more often than necessary.
5The annotate() routine appends slashes to directories."""
6from warnings import warnpy3k
7warnpy3k("the dircache module has been removed in Python 3.0", stacklevel=2)
8del warnpy3k
9
10import os
11
12__all__ = ["listdir", "opendir", "annotate", "reset"]
13
14cache = {}
15
16def reset():
17    """Reset the cache completely."""
18    global cache
19    cache = {}
20
21def listdir(path):
22    """List directory contents, using cache."""
23    try:
24        cached_mtime, list = cache[path]
25        del cache[path]
26    except KeyError:
27        cached_mtime, list = -1, []
28    mtime = os.stat(path).st_mtime
29    if mtime != cached_mtime:
30        list = os.listdir(path)
31        list.sort()
32    cache[path] = mtime, list
33    return list
34
35opendir = listdir # XXX backward compatibility
36
37def annotate(head, list):
38    """Add '/' suffixes to directories."""
39    for i in range(len(list)):
40        if os.path.isdir(os.path.join(head, list[i])):
41            list[i] = list[i] + '/'
Note: See TracBrowser for help on using the repository browser.