[Marble-devel] Review Request: Download policies part 2, parsing/using download policies

jensmh at gmx.de jensmh at gmx.de
Mon Jan 11 06:01:14 CET 2010


-----------------------------------------------------------
This is an automatically generated e-mail. 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="Browse" maximumConnections="20" />
    <downloadPolicy usage="Bulk" maximumConnections="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