opennlp.tools.formats.brat

## Class BratDocumentStream

- java.lang.Object
- - opennlp.tools.formats.brat.BratDocumentStream

- All Implemented Interfaces:
    AutoCloseable, ObjectStream<BratDocument>

      public class BratDocumentStream
      extends Object
      implements ObjectStream<BratDocument>

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BratDocumentStream(AnnotationConfiguration config, File bratCorpusDirectory, boolean searchRecursive, FileFilter fileFilter)` Creates a BratDocumentStream which reads the documents from the given input directory.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Closes the `ObjectStream` and releases all allocated resources.
    `BratDocument` | `read()` Returns the next object.
    `void` | `reset()` Repositions the stream at the beginning and the previously seen object sequence will be repeated exactly.

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

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

- - ### Constructor Detail

    - #### BratDocumentStream

          public BratDocumentStream(AnnotationConfiguration config,
                                    File bratCorpusDirectory,
                                    boolean searchRecursive,
                                    FileFilter fileFilter)
                             throws IOException

      Creates a BratDocumentStream which reads the documents from the given input directory.
      Parameters:
        `config` - the annotation.conf from the brat project as an Annotation Configuration object
        `bratCorpusDirectory` - the directory containing all the brat training data files
        `searchRecursive` - specifies if the corpus directory should be traversed recursively to find training data files.
        `fileFilter` - a custom file filter to filter out certain files or null to accept all files
      Throws:
        `IOException` - if reading from the brat directory fails in anyway

  - ### Method Detail

    - #### read

          public BratDocument read()
                            throws IOException

      Description copied from interface: `ObjectStream`
      Returns the next 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<BratDocument>`
      Returns:
        the next object or null to signal that the stream is exhausted
      Throws:
        `IOException` - if there is an error during reading

    - #### reset

          public void reset()

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

    - #### close

          public void close()

      Description copied from interface: `ObjectStream`
      Closes the `ObjectStream` and releases all allocated resources. After close was called its not allowed to call read or reset.
      Specified by:
        `close` in interface `AutoCloseable`
      Specified by:
        `close` in interface `ObjectStream<BratDocument>`

Copyright © 2026 The Apache Software Foundation. All rights reserved.