def _caa_json_downloaded(self, cover_cell, data, http, error): """Handle json reply from CAA server. If server replies without error, try to get small thumbnail of front coverart of the release. """ cover_cell.fetch_task = None if error: cover_cell.not_found() return front = None try: for image in data["images"]: if image["front"]: front = image break if front: url = front["thumbnails"]["small"] coverartimage = CaaThumbnailCoverArtImage(url=url) cover_cell.fetch_task = self.tagger.webservice.download( coverartimage.host, coverartimage.port, coverartimage.path, partial(self._cover_downloaded, cover_cell) ) else: cover_cell.not_found() except (AttributeError, KeyError, TypeError): log.error("Error reading CAA response", exc_info=True) cover_cell.not_found()
def _caa_json_downloaded(self, row, data, http, error): """Handle json reply from CAA server. If server replies without error, try to get small thumbnail of front coverart of the release. """ if not self.table: return cover_cell = self.table.cellWidget(row, len(self.table_headers)-1) if error: cover_cell.not_found() return try: caa_data = load_json(data) except ValueError: cover_cell.not_found() return front = None for image in caa_data["images"]: if image["front"]: front = image break if front: url = front["thumbnails"]["small"] coverartimage = CaaThumbnailCoverArtImage(url=url) self.tagger.xmlws.download( coverartimage.host, coverartimage.port, coverartimage.path, partial(self._cover_downloaded, row), ) else: cover_cell.not_found()