[Marble-devel] Review request: Download policies part 2, parsing/using download policies
Jens-Michael Hoffmann
jensmh at gmx.de
Mon Jan 11 06:13:58 CET 2010
-----------------------------------------------------------
This is an automatically generated e-mail.
It could not automatically be delivered and so is sent manually.
To reply, visit: http://reviewboard.kde.org/r/2552/
-----------------------------------------------------------
Review request for marble.
Summary
-------
In the marble DGML files it is now possible to define download policies
for different groups of hosts (in practice per map theme) and usage types.
Only usage type for now is "Browse" when browsing the map. For the planned
"download region" feature we need however to distinguish between "Browse"
and "Bulk" download as this affects the number of allowing concurrent
connections.
As download policies for openstreetmap.org this patch also adds these policies
<downloadPolicy usage=3D"Browse" maximumConnections=3D"20" />
<downloadPolicy usage=3D"Bulk" maximumConnections=3D"2" />
to openstreetmap.dgml.
Key points:
- In MarbleModel::setMapTheme the HttpDownloadManager is made aware of
download policies. This was the best place I could find.
- HttpDownloadManager checks if a download policy which is about to be added
is in place already.
- GeoSceneTexture is no longer copiable which apparently does no harm.
- If a parser error occurs within a download policy element it is ignored.
In such a case the default download policy will be used.
- HttpDownloadManager::addJob has got a DownloadUsage parameter which is
not yet used also because the default of DownloadBrowse is sufficient for now.
Diffs
-----
/trunk/KDE/kdeedu/marble/data/maps/earth/openstreetmap/openstreetmap.dgml 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/DownloadPolicy.h 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/HttpDownloadManager.h 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/HttpDownloadManager.cpp 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/MarbleModel.h 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/MarbleModel.cpp 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.h 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.cpp 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/geodata/handlers/dgml/DgmlDownloadPolicyTagHandler.h PRE-CREATION =
/trunk/KDE/kdeedu/marble/src/lib/geodata/handlers/dgml/DgmlDownloadPolicyTagHandler.cpp PRE-CREATION =
/trunk/KDE/kdeedu/marble/src/lib/geodata/handlers/dgml/DgmlElementDictionary.h 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/geodata/handlers/dgml/DgmlElementDictionary.cpp 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/geodata/scene/GeoSceneTexture.h 1072833 =
/trunk/KDE/kdeedu/marble/src/lib/geodata/scene/GeoSceneTexture.cpp 1072833 =
/trunk/KDE/kdeedu/marble/src/tilecreator/CMakeLists.txt 1072833 =
Diff: http://reviewboard.kde.org/r/2552/diff
Testing
-------
Browsing different map themes including switching between map themes multiple times.
Thanks,
jmho
More information about the Marble-devel
mailing list