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

    All Methods Instance Methods Concrete Methods
    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 Detail

    - #### 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`