AbstractEventStream (Apache OpenNLP Tools 2.5.9 API)
Description: declaration: package: opennlp.tools.util, class: AbstractEventStream

# Class AbstractEventStream<T>

java.lang.Object
opennlp.tools.util.AbstractEventStream<T>

Type Parameters:
  `T` - The generic type representing samples.

All Implemented Interfaces:
  `AutoCloseable, ObjectStream<Event>`

Direct Known Subclasses:
  `AbstractParserEventStream, ChunkerEventStream, DocumentCategorizerEventStream, LanguageDetectorEventStream, LemmaSampleEventStream, NameFinderEventStream, POSSampleEventStream, SDEventStream, TokSpanEventStream`

public abstract class AbstractEventStream<T> extends Object implements ObjectStream<Event>
A base `ObjectStream` implementation for events.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AbstractEventStream(ObjectStream<T> samples)`
  Initializes an `AbstractEventStream` with a sample `Iterator`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  Closes the `ObjectStream` and releases all allocated resources.
  `final Event`
  `read()`
  Returns the next `T` object.
  `void`
  `reset()`
  Repositions the stream at the beginning and the previously seen object sequence will be repeated exactly.

  ### Methods inherited from class Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### AbstractEventStream

    public AbstractEventStream(ObjectStream<T> samples)
    Initializes an `AbstractEventStream` with a sample `Iterator`.
    Parameters:
      `samples` - The `Iterator` that provides the `T` samples.

- ## Method Details

  - ### read

    public final Event read() throws IOException
    Description copied from interface: `ObjectStream`
    Returns the next `T` object. Calling this method repeatedly until it returns `null` will return each object from the underlying source exactly once.
    Specified by:
      `read` in interface `ObjectStream<T>`
    Returns:
      The next object or `null` to signal that the stream is exhausted.
    Throws:
      `IOException` - Thrown if there is an error during reading.

  - ### reset

    public void reset() throws IOException, UnsupportedOperationException
    Description copied from interface: `ObjectStream`
    Repositions the stream at the beginning and the previously seen object sequence will be repeated exactly. This method can be used to re-read the stream if multiple passes over the objects are required.

    The implementation of this method is optional.

    Specified by:
      `reset` in interface `ObjectStream<T>`
    Throws:
      `IOException` - Thrown if there is an error during resetting the stream.
      `UnsupportedOperationException` - Thrown if the `reset()` is not supported. By default, this is the case.

  - ### close

    public void close() throws IOException
    Description copied from interface: `ObjectStream`
    Closes the `ObjectStream` and releases all allocated resources. After close was called, it's not allowed to call `ObjectStream.read()` or `ObjectStream.reset()`.
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `ObjectStream<T>`
    Throws:
      `IOException` - Thrown if there is an error during closing the stream.