def fetch_banner(self, url, index, cache=True): """Creates a request to load a banner from the given URL. A request is defined by its URL and carried out asynchronously. The result is stored on disk if caching is enabled. When a request has been completed, :py:meth:`.finished_request` will be invoked. :param url: The location of the banner to load. :type url: string :param index: The index referring to a :class:`.DecoratedNode` to fetch a banner for (origin of the request). Used to inform the node's model when the request was finished. :type index: :class:`~.PySide.QtCore.QModelIndex` :param cache: Determines if the loaded banner should be cached on disk. :type cache: bool """ request = QNetworkRequest(QUrl(url)) request.setAttribute(QNetworkRequest.CacheLoadControlAttribute, QNetworkRequest.PreferCache) request.setAttribute(QNetworkRequest.CacheSaveControlAttribute, cache) reply = access_manager.get(request) self._ready_signal[url] = index from_cache = bool(reply.attribute(QNetworkRequest.SourceIsFromCacheAttribute)) logger.debug("Loading '{}' (Cached: {})".format(url, from_cache))
def testRequestCtor(self): request = QNetworkRequest(QUrl('http://example.com/movie.mov')) request.setAttribute(QNetworkRequest.User, 1234) media = QMediaContent(request) self.assertEqual(media.canonicalUrl(), QUrl('http://example.com/movie.mov')) self.assertEqual(media.canonicalResource().request(), request) self.assertEqual(media.canonicalResource().url(), QUrl('http://example.com/movie.mov'))
def testRequestCtor(self): request = QNetworkRequest(QUrl('http://example.com/movie.mov')) request.setAttribute(QNetworkRequest.User, 1234) media = QMediaContent(request) self.assertEqual(media.canonicalUrl(), QUrl('http://example.com/movie.mov')) self.assertEqual(media.canonicalResource().request(), request) self.assertEqual(media.canonicalResource().url(), QUrl('http://example.com/movie.mov'))