From 7c4840083cf1a3df1ea8905cd60264acceb528ef Mon Sep 17 00:00:00 2001 From: Sophist Date: Tue, 26 Nov 2013 17:50:51 +0000 Subject: [PATCH] Address comments Reduce down to one counter variable. Eliminate decrement at unqueue/increment at start request Update counter emit aligned with counter increment/decrement. --- picard/ui/mainwindow.py | 2 +- picard/webservice.py | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/picard/ui/mainwindow.py b/picard/ui/mainwindow.py index d77d883e4..874ce471a 100644 --- a/picard/ui/mainwindow.py +++ b/picard/ui/mainwindow.py @@ -235,7 +235,7 @@ class MainWindow(QtGui.QMainWindow): self.infostatus.setAlbums(len(self.tagger.albums)) self.infostatus.setPendingFiles(File.num_pending_files) ws = self.tagger.xmlws - self.infostatus.setPendingRequests(ws.num_pending_web_requests + ws.num_active_requests) + self.infostatus.setPendingRequests(ws.num_pending_web_requests) def update_statusbar_listen_port(self, listen_port): if listen_port: diff --git a/picard/webservice.py b/picard/webservice.py index 151f3c163..17ae4091c 100644 --- a/picard/webservice.py +++ b/picard/webservice.py @@ -145,7 +145,6 @@ class XmlWebService(QtCore.QObject): "DELETE": self.manager.deleteResource } self.num_pending_web_requests = 0 - self.num_active_requests = 0 def set_cache(self, cache_size_in_mb=100): cache = QtNetwork.QNetworkDiskCache() @@ -189,7 +188,6 @@ class XmlWebService(QtCore.QObject): key = (host, port) self._last_request_times[key] = time.time() self._active_requests[reply] = (request, handler, xml) - self.num_active_requests += 1 return True @staticmethod @@ -203,7 +201,8 @@ class XmlWebService(QtCore.QObject): leftUrl.toString(QUrl.RemovePort) == rightUrl.toString(QUrl.RemovePort) def _process_reply(self, reply): - self.num_active_requests -= 1 + self.num_pending_web_requests -= 1 + self.tagger.tagger_stats_changed.emit() try: request, handler, xml = self._active_requests.pop(reply) except KeyError: @@ -297,13 +296,11 @@ class XmlWebService(QtCore.QObject): log.debug("Last request to %s was %d ms ago, starting another one", key, last_ms) d = request_delay queue.popleft()() - self.num_pending_web_requests -= 1 else: d = request_delay - last_ms log.debug("Waiting %d ms before starting another request to %s", d, key) if d < delay: delay = d - self.tagger.tagger_stats_changed.emit() if delay < sys.maxint: self._timer.start(delay) @@ -338,7 +335,7 @@ class XmlWebService(QtCore.QObject): pass else: self.num_pending_web_requests -= 1 - self.tagger.tagger_stats_changed.emit() + self.tagger.tagger_stats_changed.emit() def _get_by_id(self, entitytype, entityid, handler, inc=[], params=[], priority=False, important=False, mblogin=False): host = config.setting["server_host"]