protected class BalloonController.DocumentRetrievalTask
extends java.util.TimerTask
FileStore
until it becomes
available, or until a timeout is exceeded. When the task finishes it will trigger a callback on the Event
Dispatch Thread (EDT) to either onDocumentLoaded
or onDocumentFailed
.
This task is designed to be repeated periodically. The task will cancel itself when the document becomes available, or the timeout is exceeded.
Modifier and Type | Field and Description |
---|---|
protected KMLRoot |
context
The document that contained the link this document.
|
protected java.lang.String |
docUrl
URL of the KML document to load.
|
protected java.lang.String |
featureRef
Reference to a feature in the remote document, with an action (for example, "myFeature;flyto").
|
protected long |
start
Time that the task started, used to evaluate the timeout.
|
protected long |
timeout
Task timeout.
|
Constructor and Description |
---|
DocumentRetrievalTask(java.lang.String url,
KMLRoot context,
java.lang.String featureRef,
long timeout)
Create a new retrieval task.
|
Modifier and Type | Method and Description |
---|---|
void |
run()
Request the document from the
FileStore . |
protected KMLRoot context
protected java.lang.String docUrl
protected java.lang.String featureRef
protected long start
protected long timeout
public DocumentRetrievalTask(java.lang.String url, KMLRoot context, java.lang.String featureRef, long timeout)
url
- URL of document to retrieve.context
- Context of the link to the document. May be null.featureRef
- Reference to a feature in the remote document, with an action to perform on the feature
(for example, "myFeature;flyto"). The action will be carried out when the document becomes
available.timeout
- Timeout for this task in milliseconds. The task will fail if the document has not been
downloaded in this many milliseconds.public void run()
FileStore
. If the document is available, parse
it and schedule a callback on the EDT to BalloonController.onDocumentLoaded(String,
gov.nasa.worldwind.ogc.kml.KMLRoot, String)
. If an exception occurs, or the timeout is exceeded, schedule a
callback on the EDT to BalloonController.onDocumentFailed(String, Exception)
run
in interface java.lang.Runnable
run
in class java.util.TimerTask