<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def readdir(self, path, fh):
 """Called by FUSE when a directory is opened. Returns a list of file and directory names for the directory. """

        log.debug('readdir(): {}'.format(path))
        try:
            dir = self._directory_cache[path]
        except KeyError:
            dir = self._get_directory(path)
            self._directory_cache[path] = dir
        return dir