NASA World Wind

gov.nasa.worldwind.retrieve
Class BasicRetrievalService

java.lang.Object
  extended by gov.nasa.worldwind.avlist.AVListImpl
      extended by gov.nasa.worldwind.WWObjectImpl
          extended by gov.nasa.worldwind.retrieve.BasicRetrievalService
All Implemented Interfaces:
AVList, MessageListener, RetrievalService, WWObject, PropertyChangeListener, Thread.UncaughtExceptionHandler, EventListener

public final class BasicRetrievalService
extends WWObjectImpl
implements RetrievalService, Thread.UncaughtExceptionHandler

Performs threaded retrieval of data.


Nested Class Summary
 
Nested classes/interfaces inherited from interface gov.nasa.worldwind.retrieve.RetrievalService
RetrievalService.SSLExceptionListener
 
Field Summary
protected  RetrievalService.SSLExceptionListener sslExceptionListener
           
 
Constructor Summary
BasicRetrievalService()
           
 
Method Summary
 boolean contains(Retriever retriever)
           
 int getNumRetrieversPending()
           
 double getProgress()
           
 int getRetrieverPoolSize()
           
 RetrievalService.SSLExceptionListener getSSLExceptionListener()
          Indicates the listener to be called when SSLHandshakeExceptions are thrown during resource retrieval.
 boolean hasActiveTasks()
           
 boolean isAvailable()
           
 RetrievalFuture runRetriever(Retriever retriever)
           
 RetrievalFuture runRetriever(Retriever retriever, double priority)
           
 void setRetrieverPoolSize(int poolSize)
           
 void setSSLExceptionListener(RetrievalService.SSLExceptionListener sslExceptionListener)
          Specifies the listener called when a SSLHandshakeException is thrown during resource retrieval.
 void shutdown(boolean immediately)
           
 void uncaughtException(Thread thread, Throwable throwable)
           
 
Methods inherited from class gov.nasa.worldwind.WWObjectImpl
onMessage, propertyChange
 
Methods inherited from class gov.nasa.worldwind.avlist.AVListImpl
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getBooleanValue, getBooleanValue, getChangeSupport, getDoubleValue, getDoubleValue, getEntries, getIntegerValue, getIntegerValue, getLongValue, getLongValue, getRestorableStateForAVPair, getStringValue, getStringValue, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface gov.nasa.worldwind.avlist.AVList
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
 
Methods inherited from interface java.beans.PropertyChangeListener
propertyChange
 
Methods inherited from interface gov.nasa.worldwind.event.MessageListener
onMessage
 

Field Detail

sslExceptionListener

protected RetrievalService.SSLExceptionListener sslExceptionListener
Constructor Detail

BasicRetrievalService

public BasicRetrievalService()
Method Detail

contains

public boolean contains(Retriever retriever)
Specified by:
contains in interface RetrievalService
Parameters:
retriever - the retriever to check
Returns:
true if the retriever is being run or pending execution
Throws:
IllegalArgumentException - if retriever is null

getNumRetrieversPending

public int getNumRetrieversPending()
Specified by:
getNumRetrieversPending in interface RetrievalService

getProgress

public double getProgress()

getRetrieverPoolSize

public int getRetrieverPoolSize()
Specified by:
getRetrieverPoolSize in interface RetrievalService

getSSLExceptionListener

public RetrievalService.SSLExceptionListener getSSLExceptionListener()
Description copied from interface: RetrievalService
Indicates the listener to be called when SSLHandshakeExceptions are thrown during resource retrieval.

Specified by:
getSSLExceptionListener in interface RetrievalService
Returns:
the exception listener, or null if no listener has been specified.

hasActiveTasks

public boolean hasActiveTasks()
Specified by:
hasActiveTasks in interface RetrievalService

isAvailable

public boolean isAvailable()
Specified by:
isAvailable in interface RetrievalService

runRetriever

public RetrievalFuture runRetriever(Retriever retriever)
Specified by:
runRetriever in interface RetrievalService
Parameters:
retriever - the retriever to run
Returns:
a future object that can be used to query the request status of cancel the request.
Throws:
IllegalArgumentException - if retriever is null or has no name

runRetriever

public RetrievalFuture runRetriever(Retriever retriever,
                                    double priority)
Specified by:
runRetriever in interface RetrievalService
Parameters:
retriever - the retriever to run
priority - the secondary priority of the retriever, or negative if it is to be the primary priority
Returns:
a future object that can be used to query the request status of cancel the request.
Throws:
IllegalArgumentException - if retriever is null or has no name

setRetrieverPoolSize

public void setRetrieverPoolSize(int poolSize)
Specified by:
setRetrieverPoolSize in interface RetrievalService
Parameters:
poolSize - the number of threads in the thread pool
Throws:
IllegalArgumentException - if poolSize is non-positive

setSSLExceptionListener

public void setSSLExceptionListener(RetrievalService.SSLExceptionListener sslExceptionListener)
Description copied from interface: RetrievalService
Specifies the listener called when a SSLHandshakeException is thrown during resource retrieval.

Specified by:
setSSLExceptionListener in interface RetrievalService
Parameters:
sslExceptionListener - to listener to invoke, or null if no listener is to be invoked.

shutdown

public void shutdown(boolean immediately)
Specified by:
shutdown in interface RetrievalService

uncaughtException

public void uncaughtException(Thread thread,
                              Throwable throwable)
Specified by:
uncaughtException in interface Thread.UncaughtExceptionHandler

NASA World Wind