Package org.bson

Class BsonBinaryWriter

  • All Implemented Interfaces:
    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

      • 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)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing a boolean value
        Specified by:
        doWriteBoolean in class AbstractBsonWriter
        Parameters:
        value - the boolean value to write
      • doWriteDateTime

        protected void doWriteDateTime​(long value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing a date time value
        Specified by:
        doWriteDateTime in class AbstractBsonWriter
        Parameters:
        value - the long value to write
      • doWriteDouble

        protected void doWriteDouble​(double value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing a Double value
        Specified by:
        doWriteDouble in class AbstractBsonWriter
        Parameters:
        value - the double value to write
      • doWriteInt32

        protected void doWriteInt32​(int value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing an int32 value
        Specified by:
        doWriteInt32 in class AbstractBsonWriter
        Parameters:
        value - the int value to write
      • doWriteInt64

        protected void doWriteInt64​(long value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing an int64 value
        Specified by:
        doWriteInt64 in class AbstractBsonWriter
        Parameters:
        value - the long value to write
      • doWriteJavaScript

        protected void doWriteJavaScript​(java.lang.String value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing a JavaScript function
        Specified by:
        doWriteJavaScript in class AbstractBsonWriter
        Parameters:
        value - the String value to write
      • doWriteJavaScriptWithScope

        protected void doWriteJavaScriptWithScope​(java.lang.String value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing a scoped JavaScript function
        Specified by:
        doWriteJavaScriptWithScope in class AbstractBsonWriter
        Parameters:
        value - the boolean value to write
      • doWriteString

        public void doWriteString​(java.lang.String value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing a String
        Specified by:
        doWriteString in class AbstractBsonWriter
        Parameters:
        value - the String value to write
      • doWriteSymbol

        public void doWriteSymbol​(java.lang.String value)
        Description copied from class: AbstractBsonWriter
        Handles the logic of writing a Symbol
        Specified by:
        doWriteSymbol in class AbstractBsonWriter
        Parameters:
        value - the boolean value to write
      • 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.