info.informatica.doc.agent
Class ResourceDownloader<C>

java.lang.Object
  extended by java.lang.Thread
      extended by info.informatica.doc.agent.ResourceDownloader<C>
All Implemented Interfaces:
Runnable

public abstract class ResourceDownloader<C>
extends Thread

Asynchronous downloading of an embedded resource of a given type.

Author:
Carlos Amengual

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
 
Field Summary
protected  List<DownloadListener<C>> listeners
           
protected  C nativeContent
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
ResourceDownloader(URL url)
           
 
Method Summary
 void addImageListener(DownloadListener<C> listener)
           
 C getNativeContent()
           
 URL getURL()
           
 boolean isDone()
           
protected  void notifyDownload()
           
protected  void notifyFailure(IOException e)
           
protected  InputStream openStream()
           
protected abstract  void readContent(InputStream is)
          Reads content from a stream and transforms it to native content.
 void run()
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

nativeContent

protected C nativeContent

listeners

protected List<DownloadListener<C>> listeners
Constructor Detail

ResourceDownloader

public ResourceDownloader(URL url)
Method Detail

getURL

public URL getURL()

addImageListener

public void addImageListener(DownloadListener<C> listener)

isDone

public boolean isDone()

run

public void run()
Specified by:
run in interface Runnable
Overrides:
run in class Thread

openStream

protected InputStream openStream()
                          throws IOException
Throws:
IOException

readContent

protected abstract void readContent(InputStream is)
                             throws IOException
Reads content from a stream and transforms it to native content.

Parameters:
is - the stream with the content.
Throws:
IOException - if an error occurs when reading the stream.

notifyDownload

protected void notifyDownload()

notifyFailure

protected void notifyFailure(IOException e)

getNativeContent

public C getNativeContent()


Copyright © 2011 informatica.info. All Rights Reserved.