public class BasicBSONEncoder extends Object implements BSONEncoder
| Constructor and Description | 
|---|
| BasicBSONEncoder() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | _putObjectField(String name,
               Object initialValue)Encodes any Object type | 
| void | done()Free the resources. | 
| byte[] | encode(BSONObject document)Encode a document into byte array. | 
| protected BsonBinaryWriter | getBsonWriter()Gets the writer responsible for writing the encoded BSON. | 
| protected OutputBuffer | getOutputBuffer()Gets the buffer the BSON is being encoded into. | 
| protected void | putArray(String name,
        Object object)Encodes an array field. | 
| protected void | putBinary(String name,
         Binary binary)Encodes a Binary field | 
| protected void | putBinary(String name,
         byte[] bytes)Encodes a byte array field | 
| protected void | putBoolean(String name,
          Boolean value)Encodes a field with a  Booleanorbooleanvalue | 
| protected void | putCode(String name,
       Code code)Encodes a field to a  BsonType.JAVASCRIPTvalue. | 
| protected void | putCodeWScope(String name,
             CodeWScope codeWScope)Encodes a field to a  BsonType.JAVASCRIPT_WITH_SCOPEvalue. | 
| protected void | putDate(String name,
       Date date)Encodes a field with data and time value. | 
| protected void | putDecimal128(String name,
             Decimal128 value)Encodes a Decimal128 field. | 
| protected void | putIterable(String name,
           Iterable iterable)Encodes an Iterable, for example  Listvalues | 
| protected void | putMap(String name,
      Map map)Encodes a map, as a BSON document | 
| protected void | putMaxKey(String name)Encodes a field to a  BsonType.MAX_KEYvalue. | 
| protected void | putMinKey(String name)Encodes a field to a  BsonType.MIN_KEYvalue. | 
| protected void | putName(String name)Writes a field name | 
| protected void | putNull(String name)Encodes a null value | 
| protected void | putNumber(String name,
         Number number)Encodes any number field. | 
| int | putObject(BSONObject document)Encodes a  BSONObject. | 
| protected int | putObject(String name,
         BSONObject document)Encodes any  BSONObject, as a document | 
| protected void | putObjectId(String name,
           ObjectId objectId)Encodes an ObjectId field to a  BsonType.OBJECT_ID. | 
| protected void | putPattern(String name,
          Pattern value)Encodes a Pattern field to a  BsonType.REGULAR_EXPRESSION. | 
| protected boolean | putSpecial(String name,
          Object special)Special values are not encoded into documents. | 
| protected void | putString(String name,
         String value)Encodes a String field | 
| protected void | putSymbol(String name,
         Symbol symbol)Encodes a Symbol field | 
| protected void | putTimestamp(String name,
            BSONTimestamp timestamp)Encodes a BSON timestamp | 
| protected void | putUndefined(String name)Encodes an undefined value | 
| protected void | putUUID(String name,
       UUID uuid)Encodes a field with a  UUIDvalue. | 
| void | set(OutputBuffer buffer)Sets the buffer to wrich the result of encoding will be written. | 
public byte[] encode(BSONObject document)
BSONEncoderOutputBuffer,
 invokes the other 3 methods in a corresponding sequence:
 
 and returns the contents of the OutputBuffer.encode in interface BSONEncoderdocument - the document to be encodedpublic void done()
BSONEncoderdone in interface BSONEncoderpublic void set(OutputBuffer buffer)
BSONEncoderset in interface BSONEncoderbuffer - the buffer to be used to write a byte sequences toprotected OutputBuffer getOutputBuffer()
protected BsonBinaryWriter getBsonWriter()
public int putObject(BSONObject document)
BSONObject. This is for the higher level api calls.putObject in interface BSONEncoderdocument - the document to encodeprotected void putName(String name)
name - the field nameprotected void _putObjectField(String name, Object initialValue)
name - the field nameinitialValue - the value to writeprotected void putNull(String name)
name - the field nameBsonType.NULLprotected void putUndefined(String name)
name - the field nameBsonType.UNDEFINEDprotected void putTimestamp(String name, BSONTimestamp timestamp)
name - the field nametimestamp - the timestamp to encodeBsonType.TIMESTAMPprotected void putCode(String name, Code code)
BsonType.JAVASCRIPT value.name - the field namecode - the valueprotected void putCodeWScope(String name, CodeWScope codeWScope)
BsonType.JAVASCRIPT_WITH_SCOPE value.name - the field namecodeWScope - the valueprotected void putBoolean(String name, Boolean value)
Boolean or boolean valuename - the field namevalue - the valueprotected void putDate(String name, Date date)
name - the field namedate - the valueBsonType.DATE_TIMEprotected void putNumber(String name, Number number)
name - the field namenumber - the valueprotected void putDecimal128(String name, Decimal128 value)
name - the field namevalue - the valueprotected void putBinary(String name, byte[] bytes)
name - the field namebytes - the valueBsonType.BINARYprotected void putBinary(String name, Binary binary)
name - the field namebinary - the valueBsonType.BINARYprotected void putUUID(String name, UUID uuid)
UUID value.  This is encoded to a binary value of subtype BsonBinarySubType.UUID_LEGACYname - the field nameuuid - the valueprotected void putSymbol(String name, Symbol symbol)
name - the field namesymbol - the valueBsonType.SYMBOLprotected void putString(String name, String value)
name - the field namevalue - the valueBsonType.STRINGprotected void putPattern(String name, Pattern value)
BsonType.REGULAR_EXPRESSION.name - the field namevalue - the valueBsonType.BINARYprotected void putObjectId(String name, ObjectId objectId)
BsonType.OBJECT_ID.name - the field nameobjectId - the valueprotected void putArray(String name, Object object)
name - the field nameobject - the array, which can be any sort of primitive or String arrayprotected void putIterable(String name, Iterable iterable)
List valuesname - the field nameiterable - the valueprotected void putMap(String name, Map map)
name - the field namemap - the valueprotected int putObject(String name, BSONObject document)
BSONObject, as a documentname - the field namedocument - the valueprotected boolean putSpecial(String name, Object special)
name - the field namespecial - the valueprotected void putMinKey(String name)
BsonType.MIN_KEY value.name - the field nameprotected void putMaxKey(String name)
BsonType.MAX_KEY value.name - the field name