@Override
protected void realRun() throws SAXException, IOException, OsmTransferException {
try {
while(! relationsToDownload.isEmpty() && !canceled) {
Relation r = relationsToDownload.pop();
if (r.isNew()) {
continue;
}
rememberChildRelationsToDownload(r);
progressMonitor.setCustomText(tr("Downloading relation {0}", r.getDisplayName(DefaultNameFormatter.getInstance())));
OsmServerObjectReader reader = new OsmServerObjectReader(r.getId(), OsmPrimitiveType.RELATION,
true);
DataSet dataSet = null;
try {
dataSet = reader.parseOsm(progressMonitor
.createSubTaskMonitor(ProgressMonitor.ALL_TICKS, false));