Interface StreamingDatasetWriter

All Known Implementing Classes:
BasicStreamingDataset, FilteredStreamingDatasetWriter, StreamingDataset, StreamingDatasetJsonWriter

public interface StreamingDatasetWriter
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Notifies the writer to close- all data has been written.
    void
    Finishes the stream while indicating an error occurred.
    void
    initialize(String[] columnNames, Class<?>[] columnTypes, boolean supportsQuality, int expectedRows)
    Initializes the streaming dataset with important information, primarily the column names and types.
    void
    write(Object[] data, QualityCode[] quality)
    Writes a row with the given data.
  • Method Details

    • initialize

      void initialize(String[] columnNames, Class<?>[] columnTypes, boolean supportsQuality, int expectedRows)
      Initializes the streaming dataset with important information, primarily the column names and types. If supportsQuality is true, it is expected that every value added has an associated quality. expectedRows gives an idea as to how many rows will be returned- useful for progress indication. Should be -1 if the number cannot be known in advance.
      Parameters:
      expectedRows - -1 if not known, otherwise the number of rows that will be in the dataset.
    • write

      void write(Object[] data, QualityCode[] quality) throws IOException
      Writes a row with the given data. Bounds and order of arrays must match that used to call initialize. quality may be null if dataset does not support quality.
      Throws:
      IOException
    • finish

      void finish()
      Notifies the writer to close- all data has been written. Should be called from a finally block.
    • finishWithError

      void finishWithError(Exception e)
      Finishes the stream while indicating an error occurred. Either this, or the successful finish(), must be called.