Interface _Private_IonManagedWriter

All Superinterfaces:
AutoCloseable, Closeable, Faceted, Flushable, IonWriter

@Deprecated public interface _Private_IonManagedWriter extends IonWriter
Deprecated.
This is a private API subject to change without notice.
An IonWriter that manages local symbol tables, while providing access to its underlying IonRawWriter.
  • Method Details

    • getRawWriter

      _Private_IonRawWriter getRawWriter()
      Deprecated.
      Get the underlying raw user value writer. This may be used to directly write user values, field names, and annotations, bypassing any symbol table management performed by this IonManagedWriter.
      Returns:
      the _Private_IonRawWriter responsible for writing this IonManagedWriter's user values.
    • requireLocalSymbolTable

      void requireLocalSymbolTable() throws IOException
      Deprecated.
      If a local symbol table has not already been started by this writer since it was constructed or last finished, start writing a local symbol table by opening the struct and declaring the imports. Any local symbols subsequently written using this IonManagedWriter will be appended as they are encountered. When using the raw writer, a call to this API is required unless one of the following applies:
      • The user won't be writing any symbols.
      • The user has manually written the symbol table struct to the correct raw writer. In this case, making this call would start a new (and probably redundant) symbol table context, which is wasteful but not harmful.
      • The user definitely will be writing more symbols in this context using the managed writer.
      Failing to call this when required will leave the system symbol table as the active symbol table context for the subsequently written values, which will lead to missing symbol ID mappings.
      Throws:
      IOException