org.openstreetmap.josm.gui.dialogs.relation
Class DownloadRelationTask

java.lang.Object
  extended by org.openstreetmap.josm.gui.PleaseWaitRunnable
      extended by 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 an OsmDataLayer


Field Summary
private  boolean canceled
           
private  java.lang.Exception lastException
           
private  OsmDataLayer layer
           
private  OsmServerObjectReader objectReader
           
private  java.util.Collection<Relation> relations
           
 
Fields inherited from class org.openstreetmap.josm.gui.PleaseWaitRunnable
progressMonitor
 
Constructor Summary
DownloadRelationTask(java.util.Collection<Relation> relations, OsmDataLayer layer)
          Creates the download task
 
Method Summary
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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

canceled

private boolean canceled

lastException

private java.lang.Exception lastException

relations

private java.util.Collection<Relation> relations

layer

private OsmDataLayer layer

objectReader

private OsmServerObjectReader objectReader
Constructor Detail

DownloadRelationTask

public DownloadRelationTask(java.util.Collection<Relation> relations,
                            OsmDataLayer layer)
                     throws java.lang.IllegalArgumentException
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 - thrown if relations is null
java.lang.IllegalArgumentException - thrown if layer is null
Method Detail

cancel

protected void cancel()
Description copied from class: PleaseWaitRunnable
User pressed cancel button.

Specified by:
cancel in class PleaseWaitRunnable

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 class PleaseWaitRunnable

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 class PleaseWaitRunnable
Throws:
org.xml.sax.SAXException
java.io.IOException
OsmTransferException


JOSM