'Update table of contents mapping.'

def _refresh(self):

    if ((time.time() - self._last_read) > (2 + self._skewfactor)):
        refresh = False
        for subdir in self._toc_mtimes:
            mtime = os.path.getmtime(self._paths[subdir])
            if (mtime > self._toc_mtimes[subdir]):
                refresh = True
            self._toc_mtimes[subdir] = mtime
        if (not refresh):
            return
    self._toc = {}
    for subdir in self._toc_mtimes:
        path = self._paths[subdir]
        for entry in os.listdir(path):
            p = os.path.join(path, entry)
            if os.path.isdir(p):
                continue
            uniq = entry.split(self.colon)[0]
            self._toc[uniq] = os.path.join(subdir, entry)
    self._last_read = time.time()
