# HG changeset patch # User Nicolas Dumazet # Date 1241439513 -32400 # Node ID 713ec3f9c9deded1b1253c3b46231b309e668bf6 # Parent 0695288e8c37b4aeea70b59aa14ba81667448e87 inotify: Clarify the use of "watcher" name. Currently, Watcher is a class in inotify.linux.watcher, but it's also a class in inotify.server . To complicate things further more, the latter has a 'watcher' attribute, an instance of the former class. When it comes to the 'watcher' attribute of the Server class in inotify.server, one can get quite confused: is it a Watcher object from inotify.server, or from inotify.linux.watcher? Changes: * in inotify.linux.watcher : nothing * in inotify.server : ** Watcher class is renamed to RepoWatcher ** server.watcher is renamed to server.repowatcher diff -r 0695288e8c37 -r 713ec3f9c9de hgext/inotify/server.py --- a/hgext/inotify/server.py Mon May 04 18:23:05 2009 +0900 +++ b/hgext/inotify/server.py Mon May 04 21:18:33 2009 +0900 @@ -114,7 +114,7 @@ raise util.Abort(_('cannot watch %s until inotify watch limit is raised') % repo.root) -class Watcher(object): +class RepoWatcher(object): poll_events = select.POLLIN statuskeys = 'almr!?' @@ -545,10 +545,10 @@ class Server(object): poll_events = select.POLLIN - def __init__(self, ui, repo, watcher, timeout): + def __init__(self, ui, repo, repowatcher, timeout): self.ui = ui self.repo = repo - self.watcher = watcher + self.repowatcher = repowatcher self.timeout = timeout self.sock = socket.socket(socket.AF_UNIX) self.sockpath = self.repo.join('inotify.sock') @@ -602,36 +602,38 @@ self.ui.note(_('answering query for %r\n') % states) - if self.watcher.timeout: + if self.repowatcher.timeout: # We got a query while a rescan is pending. Make sure we # rescan before responding, or we could give back a wrong # answer. - self.watcher.handle_timeout() + self.repowatcher.handle_timeout() if not names: def genresult(states, tree): - for fn, state in self.watcher.walk(states, tree): + for fn, state in self.repowatcher.walk(states, tree): yield fn else: def genresult(states, tree): for fn in names: - l = self.watcher.lookup(fn, tree) + l = self.repowatcher.lookup(fn, tree) try: if l in states: yield fn except TypeError: - for f, s in self.watcher.walk(states, l, fn): + for f, s in self.repowatcher.walk(states, l, fn): yield f results = ['\0'.join(r) for r in [ - genresult('l', self.watcher.statustrees['l']), - genresult('m', self.watcher.statustrees['m']), - genresult('a', self.watcher.statustrees['a']), - genresult('r', self.watcher.statustrees['r']), - genresult('!', self.watcher.statustrees['!']), - '?' in states and genresult('?', self.watcher.statustrees['?']) or [], + genresult('l', self.repowatcher.statustrees['l']), + genresult('m', self.repowatcher.statustrees['m']), + genresult('a', self.repowatcher.statustrees['a']), + genresult('r', self.repowatcher.statustrees['r']), + genresult('!', self.repowatcher.statustrees['!']), + '?' in states + and genresult('?', self.repowatcher.statustrees['?']) + or [], [], - 'c' in states and genresult('n', self.watcher.tree) or [], + 'c' in states and genresult('n', self.repowatcher.tree) or [], ]] try: @@ -661,10 +663,10 @@ self.ui = ui self.repo = repo self.poll = select.poll() - self.watcher = Watcher(ui, repo, self) - self.server = Server(ui, repo, self.watcher, timeout) + self.repowatcher = RepoWatcher(ui, repo, self) + self.server = Server(ui, repo, self.repowatcher, timeout) self.table = {} - for obj in (self.watcher, self.server): + for obj in (self.repowatcher, self.server): fd = obj.fileno() self.table[fd] = obj self.poll.register(fd, obj.poll_events) @@ -677,7 +679,7 @@ obj.shutdown() def run(self): - self.watcher.setup() + self.repowatcher.setup() self.ui.note(_('finished setup\n')) if os.getenv('TIME_STARTUP'): sys.exit(0) @@ -733,7 +735,7 @@ if pid: return pid - closefds([m.server.fileno(), m.watcher.fileno()]) + closefds([m.server.fileno(), m.repowatcher.fileno()]) os.setsid() fd = os.open('/dev/null', os.O_RDONLY)