org.deegree.feature.stream
Class ThreadedFeatureInputStream

java.lang.Object
  extended by org.deegree.feature.stream.ThreadedFeatureInputStream
All Implemented Interfaces:
Iterable<Feature>, FeatureInputStream

public class ThreadedFeatureInputStream
extends Object
implements FeatureInputStream

FeatureInputStream that uses a separate thread to keep an internal queue of features filled.

Version:
$Revision: $, $Date: $
Author:
Markus Schneider, last edited by: $Author: schneider $

Constructor Summary
ThreadedFeatureInputStream(FeatureInputStream rs, int maxFill, int minFill)
          Creates a new ThreadedFeatureInputStream based on the given FeatureInputStream that uses the given thread to keep the internal queue of results filled.
 
Method Summary
 void close()
          Must be invoked after using to close underlying resources, e.g.
 int count()
          Counts the remaining features in the stream (and consumes them) and closes it.
 Iterator<Feature> iterator()
           
static void shutdown()
           
 FeatureCollection toCollection()
          Returns all members of the FeatureInputStream as a FeatureCollection.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ThreadedFeatureInputStream

public ThreadedFeatureInputStream(FeatureInputStream rs,
                                  int maxFill,
                                  int minFill)
Creates a new ThreadedFeatureInputStream based on the given FeatureInputStream that uses the given thread to keep the internal queue of results filled.

Parameters:
rs -
maxFill -
minFill -
Method Detail

close

public void close()
Description copied from interface: FeatureInputStream
Must be invoked after using to close underlying resources, e.g. SQL ResultSets.

Specified by:
close in interface FeatureInputStream

toCollection

public FeatureCollection toCollection()
Description copied from interface: FeatureInputStream
Returns all members of the FeatureInputStream as a FeatureCollection.

NOTE: This method should not be called for very large result sets, as it introduces the overhead of keeping all created feature instances in memory. The returned collection will contain all Features instances from the current position in the iteration sequence.

Specified by:
toCollection in interface FeatureInputStream
Returns:
members as feature collection, never null

iterator

public Iterator<Feature> iterator()
Specified by:
iterator in interface Iterable<Feature>

count

public int count()
Description copied from interface: FeatureInputStream
Counts the remaining features in the stream (and consumes them) and closes it.

Specified by:
count in interface FeatureInputStream
Returns:
number of remaining features

shutdown

public static void shutdown()


Copyright © 2011. All Rights Reserved.