Class DownloadRelationTask
- java.lang.Object
-
- org.openstreetmap.josm.gui.PleaseWaitRunnable
-
- org.openstreetmap.josm.gui.dialogs.relation.DownloadRelationTask
-
- All Implemented Interfaces:
java.lang.Runnable
,ProgressMonitor.CancelListener
public class DownloadRelationTask extends PleaseWaitRunnable
The asynchronous task for fully downloading a collection of relations. Does a full download for each relations and merges the relation into anOsmDataLayer
- Since:
- 2563
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
canceled
private java.lang.Exception
lastException
private OsmDataLayer
layer
private MultiFetchServerObjectReader
multiObjectReader
private java.util.Collection<Relation>
relations
-
Fields inherited from class org.openstreetmap.josm.gui.PleaseWaitRunnable
progressMonitor
-
-
Constructor Summary
Constructors Constructor Description DownloadRelationTask(java.util.Collection<Relation> relations, OsmDataLayer layer)
Creates the download task
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
cancel()
User pressed cancel button.protected void
finish()
Finish up the data work.protected void
realRun()
Called in the worker thread to do the actual work.-
Methods inherited from class org.openstreetmap.josm.gui.PleaseWaitRunnable
afterFinish, canRunInBackground, getProgressMonitor, operationCanceled, run
-
-
-
-
Field Detail
-
canceled
private boolean canceled
-
lastException
private java.lang.Exception lastException
-
layer
private final OsmDataLayer layer
-
multiObjectReader
private MultiFetchServerObjectReader multiObjectReader
-
-
Constructor Detail
-
DownloadRelationTask
public DownloadRelationTask(java.util.Collection<Relation> relations, OsmDataLayer layer)
Creates the download task- Parameters:
relations
- a collection of relations. Must not be null.layer
- the layer which data is to be merged into- Throws:
java.lang.IllegalArgumentException
- if relations is nulljava.lang.IllegalArgumentException
- if layer is null
-
-
Method Detail
-
cancel
protected void cancel()
Description copied from class:PleaseWaitRunnable
User pressed cancel button.- Specified by:
cancel
in classPleaseWaitRunnable
-
finish
protected void finish()
Description copied from class:PleaseWaitRunnable
Finish up the data work. Is guaranteed to be called if realRun is called. Finish is called in the gui thread just after the dialog disappeared.- Specified by:
finish
in classPleaseWaitRunnable
-
realRun
protected void realRun() throws org.xml.sax.SAXException, java.io.IOException, OsmTransferException
Description copied from class:PleaseWaitRunnable
Called in the worker thread to do the actual work. When any of the exception is thrown, a message box will be displayed and closeDialog is called. finish() is called in any case.- Specified by:
realRun
in classPleaseWaitRunnable
- Throws:
org.xml.sax.SAXException
- if a SAX error occursjava.io.IOException
- if an I/O error occursOsmTransferException
- if a communication error with the OSM server occurs
-
-