Commit graph

18 commits

Author SHA1 Message Date
Dominik Riebeling
3144c2c74c Rewrite HttpGet based on QNetworkAccessManager.
HttpGet used to use QHttp which has been deprecated since a while and has been
removed from Qt5. Rewrite the class based on QNetworkAccessManager which is the
recommended way these days.

Change-Id: I4902309c433a85ec18e157ef3a9f5e60fd0f4b1f
2013-01-27 20:11:17 +01:00
Dominik Riebeling
1789b717ba Remove support for RFC850 timestamps.
RFC850 timeformat isn't y2k compliant. Furthermore, parsing turned out to be
broken and it doesn't seem supporting the format is necessary anyway.

Change-Id: I062e636a9e016ff1ac49d2a55f00adb1af182576
2013-01-22 22:27:16 +01:00
Dominik Riebeling
554ee364b0 Avoid unnecessary HEAD request on uncached file.
If a file is not available in the cache immediately sent a GET request. Using a
HEAD request to retrieve the file timestamp on the server is not necessary and
only creates an unnecessary network request.

Change-Id: I358507dcc0c6b837ff47e5fd710b5262d03cb7b0
2013-01-22 20:39:40 +01:00
Dominik Riebeling
1f1826e39c Remove Rockbox Utility Offline Mode.
Offline Mode was intended to allow performing an installation without network
access. However, to get the required files cached the same installation has to
be performed with network access, which is a rather strange prerequisite. A
better way would be a way to direct Rockbox Utility to some local "repository"
that holds the required files.

Furthermore, Offline Mode hasn't been tested since long and is likely to be
broken since the caching mechanism has been extended.

For now remove this functionality. As far as I know it's been rarely used (if
at all) anyway.

Change-Id: Ib2af4892708e0440bd0a7940c131f04182ddb39a
2013-01-13 19:45:29 +01:00
Dominik Riebeling
d608fd604b Remove HttpGet::error() function.
This function returns an internal enum value of QHttp (which is also
deprecated). It was only used for showing an error to the user / showing it in
the system trace. Since it is an enum value it doesn't have much value. Log /
show the error string instead.

Change-Id: I54b9b6026969f8108f779b02a04477f0ad9201ab
2013-01-13 18:48:28 +01:00
Dominik Riebeling
7263ccb105 Remove svn keyword lines from sources.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30806 a1c6a512-1295-4272-9138-f99709370657
2011-10-19 20:51:16 +00:00
Dominik Riebeling
f18b9d9d78 Make parsing the server date locale independent also for asctime and RFC850 representation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24302 a1c6a512-1295-4272-9138-f99709370657
2010-01-20 22:48:11 +00:00
Dominik Riebeling
b283967ebd Use QLocale::toDateTime() for parsing the date instead of QDateTime::fromString(). Fixes server timestamps not parsed correctly on systems with a non-english locale.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24017 a1c6a512-1295-4272-9138-f99709370657
2009-12-15 21:58:07 +00:00
Dominik Riebeling
0fcc84f463 Add cache index file to HttpGet class to maintain a list of hash - file origin mappings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23174 a1c6a512-1295-4272-9138-f99709370657
2009-10-14 20:21:23 +00:00
Dominik Wenger
d0b048e82d rbutil: dont output a error if rbutil follows a http redirect.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22739 a1c6a512-1295-4272-9138-f99709370657
2009-09-19 21:00:07 +00:00
Dominik Riebeling
132176e120 RFC2616 requires requests made to proxies to use the absoluteURI form while HTTP/1.1 clients shall only create it when sending a request to a proxy. Fixes proxy support not working correctly (most noticably on theme installation).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20992 a1c6a512-1295-4272-9138-f99709370657
2009-05-19 22:46:57 +00:00
Dominik Riebeling
b388200519 Simplify a debug output case and fix a gcc warning (as reported in FS#10124, only appears on new gcc versions).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20725 a1c6a512-1295-4272-9138-f99709370657
2009-04-17 22:09:39 +00:00
Dominik Riebeling
ba830e4cfe Don't connect the headerFinished slot during each get. Fixes the header result getting evaluated more than once if a HttpGet object is reused.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20447 a1c6a512-1295-4272-9138-f99709370657
2009-03-22 08:50:55 +00:00
Dominik Riebeling
6a76ebbab1 Cleanup HttpGet debugging output: make it somewhat more silent and streamline the messages in general.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20438 a1c6a512-1295-4272-9138-f99709370657
2009-03-21 23:18:57 +00:00
Dominik Riebeling
e8f25d91e8 Don't ignore errors when finishing a HTTP request for cached request as that is already done. Fixes a wrong status reported when an error occured.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20435 a1c6a512-1295-4272-9138-f99709370657
2009-03-21 21:04:24 +00:00
Dominik Riebeling
8037fed8d5 HttpGet: if downloaded data should be written to output buffer make sure the buffer empty. This prevents old data available to the caller if a HttpGet object is reused and the new request fails.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20432 a1c6a512-1295-4272-9138-f99709370657
2009-03-21 18:01:59 +00:00
Dominik Riebeling
e05e7932f3 Some HttpGet cleanup: use references when setting options.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20232 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 09:06:05 +00:00
Dominik Riebeling
f958717d43 Separate basic functionality from GUI parts by moving it into a separate folder. Some files still need to get cleaned up prior moving them too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18788 a1c6a512-1295-4272-9138-f99709370657
2008-10-12 19:21:58 +00:00
Renamed from rbutil/rbutilqt/httpget.cpp (Browse further)