def dir_poller(self):
        """Not part of the FUSE API, this polls the configd_dir for a
        changed mtime.  A changed mtime triggers rebuilding of the
        combined config.

        This is started as a thread from within the init (not
        __init__) method.

        """
        orig_mod_timestamp = os.stat(self.configd_dir).st_mtime
        while True:
            time.sleep(0.5)
            try:
                now_mod_timestamp = os.stat(self.configd_dir).st_mtime
            except OSError:
                # TODO couldn't get the mtime of the configd_dir!
                # wtf!  I think it's time to exit cleanly?
                continue
            else:
                if now_mod_timestamp != orig_mod_timestamp:
                    # configd_dir has seen changes (its mtime has
                    # changed), so it's time to generate new config and
                    # save the new timestamp for later comparisons.
                    logger.debug('Generating combined config')
                    self.generate_config()
                    orig_mod_timestamp = now_mod_timestamp
dataset/ETHPy150Open markhellewell/sshconfigfs/sshconfigfs.py/SSHConfigFS.dir_poller/original