Package opennlp.tools.util.eval

# Class CrossValidationPartitioner.TrainingSampleStream<E>

java.lang.Object
opennlp.tools.util.eval.CrossValidationPartitioner.TrainingSampleStream<E>

Type Parameters:
  `E` - The generic type of samples.

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

Enclosing class:
  CrossValidationPartitioner<E>

public static class CrossValidationPartitioner.TrainingSampleStream<E> extends Object implements ObjectStream<E>
The `CrossValidationPartitioner.TrainingSampleStream` which iterates over all training elements.

Note: After the `CrossValidationPartitioner.TestSampleStream` was obtained the `CrossValidationPartitioner.TrainingSampleStream` must not be used anymore, otherwise a `IllegalStateException` is thrown.

The `streams` must not be used anymore after the `CrossValidationPartitioner` was moved to one of next partitions. If they are called anyway an `IllegalStateException` is thrown.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  Closes the `ObjectStream` and releases all allocated resources.
  `ObjectStream<E>`
  `getTestSampleStream()`
  Retrieves the `ObjectStream` over the test/evaluations elements and poisons this `CrossValidationPartitioner.TrainingSampleStream`.
  `E`
  `read()`
  Returns the next `ObjectStream` object.
  `void`
  `reset()`
  Resets the training sample.

  ### Methods inherited from class java.lang.Object

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

- ## Method Details

  - ### read

    public E read() throws IOException
    Description copied from interface: `ObjectStream`
    Returns the next `ObjectStream` 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<E>`
    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
    Resets the training sample. Use this if you need to collect things before training, for example, to collect induced abbreviations or create a POS Dictionary.
    Specified by:
      `reset` in interface `ObjectStream<E>`
    Throws:
      `IOException` - Thrown if IO errors occurred.
      `IllegalStateException` - Thrown if a non-consistent state occurred.

  - ### 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<E>`
    Throws:
      `IOException` - Thrown if there is an error during closing the stream.

  - ### getTestSampleStream

    public ObjectStream<E> getTestSampleStream() throws IOException
    Retrieves the `ObjectStream` over the test/evaluations elements and poisons this `CrossValidationPartitioner.TrainingSampleStream`. From now on calls to the hasNext and next methods are forbidden and will raise an `IllegalArgumentException`.
    Returns:
      The test sample `stream`.
    Throws:
      `IOException`