org.apache.uima.collection
Interface CollectionReader

All Superinterfaces:
BaseCollectionReader, ConfigurableResource, Resource
All Known Implementing Classes:
CollectionReader_ImplBase

public interface CollectionReader
extends BaseCollectionReader, ConfigurableResource

A CollectionReader is used to iterate over the elements of a Collection. Iteration is done using the BaseCollectionReader.hasNext() and getNext(CAS) methods. Each element of the collection is returned in a CAS.

A consuming CollectionReader is one that removes each element from the collection as it is read. To find out whether a CollectionReader will consume elements in this way, call the BaseCollectionReader.isConsuming() method.

Users of a CollectionReader should always close it when they are finished using it.

CollectionReaders are also ConfigurableResources, and can be instantiated from descriptors. See XMLParser.parseCollectionReaderDescription(XMLInputSource) and UIMAFramework.produceCollectionReader(ResourceSpecifier,Map) for more information.


Field Summary
 
Fields inherited from interface org.apache.uima.resource.Resource
PARAM_AGGREGATE_SOFA_MAPPINGS, PARAM_CONFIG_PARAM_SETTINGS, PARAM_PERFORMANCE_TUNING_SETTINGS, PARAM_RESOURCE_MANAGER, PARAM_UIMA_CONTEXT
 
Fields inherited from interface org.apache.uima.resource.Resource
PARAM_AGGREGATE_SOFA_MAPPINGS, PARAM_CONFIG_PARAM_SETTINGS, PARAM_PERFORMANCE_TUNING_SETTINGS, PARAM_RESOURCE_MANAGER, PARAM_UIMA_CONTEXT
 
Method Summary
 CasInitializer getCasInitializer()
          Deprecated. As of v2.0 CAS Initializers are deprecated.
 void getNext(CAS aCAS)
          Gets the next element of the collection.
 void setCasInitializer(CasInitializer aCasInitializer)
          Deprecated. As of v2.0 CAS Initializers are deprecated.
 void typeSystemInit(TypeSystem aTypeSystem)
          Informs this CollectionReader that the CAS TypeSystem has changed.
 
Methods inherited from interface org.apache.uima.collection.base_cpm.BaseCollectionReader
close, getProcessingResourceMetaData, getProgress, hasNext, isConsuming
 
Methods inherited from interface org.apache.uima.resource.Resource
destroy, getLogger, getMetaData, getResourceManager, getUimaContext, getUimaContextAdmin, initialize, setLogger
 
Methods inherited from interface org.apache.uima.resource.ConfigurableResource
getConfigParameterValue, getConfigParameterValue, reconfigure, setConfigParameterValue, setConfigParameterValue
 
Methods inherited from interface org.apache.uima.resource.Resource
destroy, getLogger, getMetaData, getResourceManager, getUimaContext, getUimaContextAdmin, initialize, setLogger
 

Method Detail

typeSystemInit

void typeSystemInit(TypeSystem aTypeSystem)
                    throws ResourceInitializationException
Informs this CollectionReader that the CAS TypeSystem has changed. The CPM calls this method immediately following the call to Resource.initialize(ResourceSpecifier,Map), and will call it again whenever the CAS TypeSystem changes.

In this method, the CollectionReader should use the TypeSystem to resolve the names of Type and Features to the actual Type and Feature objects, which can then be used during processing.

Parameters:
aTypeSystem - the CAS TypeSystem
Throws:
ResourceInitializationException - if the type system is not compatible with this Collection Reader

getNext

void getNext(CAS aCAS)
             throws IOException,
                    CollectionException
Gets the next element of the collection. The element will be stored in the provided CAS objet. If this is a consuming CollectionReader (see BaseCollectionReader.isConsuming()), this element will also be removed from the collection.

Parameters:
aCAS - the CAS to populate with the next element of the collection
Throws:
UIMA_IllegalStateException - if there are no more elements left in the collection
IOException - if an I/O failure occurs
CollectionException - if there is some other problem with reading from the Collection

getCasInitializer

@Deprecated
CasInitializer getCasInitializer()
Deprecated. As of v2.0 CAS Initializers are deprecated.

Gets the CAS Initializer that has been assigned to this Collection Reader. Note that CollectionReader implementations are not required to make use of the CAS Initializer - refer to the documentation for your specific Collection Reader.

Returns:
the CAS Initializer for this Collection Reader

setCasInitializer

@Deprecated
void setCasInitializer(CasInitializer aCasInitializer)
Deprecated. As of v2.0 CAS Initializers are deprecated.

Assigns a CAS Initializer for this Collection Reader to use. Note that CollectionReader implementations are not required to make use of the CAS Initializer - refer to the documentation for your specific Collection Reader.

Parameters:
aCasInitializer - the CAS Initializer for this Collection Reader


Copyright © 2010 The Apache Software Foundation. All Rights Reserved.