Package org.bson

Class BsonBinaryWriter

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, BsonWriter

    public class BsonBinaryWriter
    extends AbstractBsonWriter
    A BsonWriter implementation that writes to a binary stream of data. This is the most commonly used implementation.
    Since:
    3.0
    • Constructor Detail

      • BsonBinaryWriter

        public BsonBinaryWriter​(BsonOutput bsonOutput,
                                FieldNameValidator validator)
        Construct an instance.
        Parameters:
        bsonOutput - the output to write to
        validator - the field name validator to apply
      • BsonBinaryWriter

        public BsonBinaryWriter​(BsonOutput bsonOutput)
        Construct an instance.
        Parameters:
        bsonOutput - the output to write to
      • BsonBinaryWriter

        public BsonBinaryWriter​(BsonWriterSettings settings,
                                BsonBinaryWriterSettings binaryWriterSettings,
                                BsonOutput bsonOutput)
        Construct an instance.
        Parameters:
        settings - the generic BsonWriter settings
        binaryWriterSettings - the settings specific to a BsonBinaryWriter
        bsonOutput - the output to write to
      • BsonBinaryWriter

        public BsonBinaryWriter​(BsonWriterSettings settings,
                                BsonBinaryWriterSettings binaryWriterSettings,
                                BsonOutput bsonOutput,
                                FieldNameValidator validator)
        Construct an instance.
        Parameters:
        settings - the generic BsonWriter settings
        binaryWriterSettings - the settings specific to a BsonBinaryWriter
        bsonOutput - the output to write to
        validator - the field name validator to apply
    • Method Detail

      • close

        public void close()
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class AbstractBsonWriter
      • getBsonOutput

        public BsonOutput getBsonOutput()
        Gets the BSON output backing this instance.
        Returns:
        the BSON output
      • getBinaryWriterSettings

        public BsonBinaryWriterSettings getBinaryWriterSettings()
        Returns:
        the BsonBinaryWriterSettings
        Since:
        3.6
      • flush

        public void flush()
        Description copied from interface: BsonWriter
        Flushes any pending data to the output destination.
      • doWriteBoolean

        public void doWriteBoolean​(boolean value)
      • doWriteNull

        public void doWriteNull()
      • doWriteObjectId

        public void doWriteObjectId​(ObjectId value)
      • doWriteString

        public void doWriteString​(java.lang.String value)
      • doWriteSymbol

        public void doWriteSymbol​(java.lang.String value)
      • doWriteTimestamp

        public void doWriteTimestamp​(BsonTimestamp value)
      • doWriteUndefined

        public void doWriteUndefined()
      • pipe

        public void pipe​(BsonReader reader)
        Description copied from interface: BsonWriter
        Reads a single document from a BsonReader and writes it to this.
        Specified by:
        pipe in interface BsonWriter
        Overrides:
        pipe in class AbstractBsonWriter
        Parameters:
        reader - The source.
      • pipe

        public void pipe​(BsonReader reader,
                         java.util.List<BsonElement> extraElements)
        Description copied from class: AbstractBsonWriter
        Reads a single document from the given BsonReader and writes it to this, appending the given extra elements to the document.
        Overrides:
        pipe in class AbstractBsonWriter
        Parameters:
        reader - the source of the document
        extraElements - the extra elements to append to the document
      • pushMaxDocumentSize

        public void pushMaxDocumentSize​(int maxDocumentSize)
        Sets a maximum size for documents from this point.
        Parameters:
        maxDocumentSize - the maximum document size.
      • popMaxDocumentSize

        public void popMaxDocumentSize()
        Reset the maximum document size to its previous value.
      • mark

        public void mark()
        Create a snapshot of this writer's context at a point in time.
      • reset

        public void reset()
        Resets this writer to the last mark() saved.
        Throws:
        java.lang.IllegalStateException - if mark() was not called prior to reset.