Package org.bson
Interface BSONCallback
-
- All Known Subinterfaces:
DBCallback
- All Known Implementing Classes:
BasicBSONCallback,DefaultDBCallback,EmptyBSONCallback,JSONCallback,LazyBSONCallback,LazyDBCallback
public interface BSONCallbackA callback interface for describing the structure of a BSON document. Implementations of this define how to turn BSON read from MongoDB into Java objects. See the BSON Spec.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description ObjectarrayDone()Called the end of the array, and returns the completed array.voidarrayStart()Signals the start of a BSON array.voidarrayStart(String name)Signals the start of a BSON array, with its field name.BSONCallbackcreateBSONCallback()Factory method for BSONCallbacks.Objectget()Returns the finished top-level Document.voidgotBinary(String name, byte type, byte[] data)Called when reading a field with aBsonType.BINARYvalue.voidgotBinaryArray(String name, byte[] data)Deprecated.this method is no longer called by the decodervoidgotBoolean(String name, boolean value)Called when reading a field with aBsonType.BOOLEANvalue.voidgotCode(String name, String code)Called when reading a field with aBsonType.JAVASCRIPTvalue.voidgotCodeWScope(String name, String code, Object scope)Called when reading a field with aBsonType.JAVASCRIPT_WITH_SCOPEvalue.voidgotDate(String name, long millis)Called when reading a field with aBsonType.DATE_TIMEvalue.voidgotDBRef(String name, String namespace, ObjectId id)Invoked whenBSONDecoderencountered aBsonType.DB_POINTERtype field in a byte sequence.voidgotDecimal128(String name, Decimal128 value)Called when reading a field with aBsonType.DECIMAL128value.voidgotDouble(String name, double value)Called when reading a field with aBsonType.DOUBLEvalue.voidgotInt(String name, int value)Called when reading a field with aBsonType.INT32value.voidgotLong(String name, long value)Called when reading a field with aBsonType.INT64value.voidgotMaxKey(String name)Called when reading a field with aBsonType.MAX_KEYvalue.voidgotMinKey(String name)Called when reading a field with aBsonType.MIN_KEYvalue.voidgotNull(String name)Called when reading a BSON field that exists but has a null value.voidgotObjectId(String name, ObjectId id)Called when reading a field with aBsonType.OBJECT_IDvalue.voidgotRegex(String name, String pattern, String flags)Called when reading a field with aBsonType.REGULAR_EXPRESSIONvalue.voidgotString(String name, String value)Called when reading a field with aBsonType.STRINGvalue.voidgotSymbol(String name, String value)Called when reading a field with aBsonType.SYMBOLvalue.voidgotTimestamp(String name, int time, int increment)Called when reading a field with aBsonType.TIMESTAMPvalue.voidgotUndefined(String name)Called when reading a field with aBsonType.UNDEFINEDvalue.voidgotUUID(String name, long part1, long part2)Called when reading a field with aUUIDvalue.ObjectobjectDone()Called at the end of the document/array, and returns this object.voidobjectStart()Signals the start of a BSON document, which usually maps onto some Java object.voidobjectStart(String name)Signals the start of a BSON document, which usually maps onto some Java object.voidreset()Resets the callback, clearing all state.
-
-
-
Method Detail
-
objectStart
void objectStart()
Signals the start of a BSON document, which usually maps onto some Java object.- MongoDB documentation
- MongoDB Documents
-
objectStart
void objectStart(String name)
Signals the start of a BSON document, which usually maps onto some Java object.- Parameters:
name- the field name of the document.- MongoDB documentation
- MongoDB Documents
-
objectDone
Object objectDone()
Called at the end of the document/array, and returns this object.- Returns:
- the Object that has been read from this section of the document.
-
reset
void reset()
Resets the callback, clearing all state.
-
get
Object get()
Returns the finished top-level Document.- Returns:
- the top level document read from the database.
-
createBSONCallback
BSONCallback createBSONCallback()
Factory method for BSONCallbacks.- Returns:
- a new BSONCallback.
-
arrayStart
void arrayStart()
Signals the start of a BSON array.- MongoDB documentation
- Arrays
-
arrayStart
void arrayStart(String name)
Signals the start of a BSON array, with its field name.- Parameters:
name- the name of this array field- MongoDB documentation
- Arrays
-
arrayDone
Object arrayDone()
Called the end of the array, and returns the completed array.- Returns:
- an Object representing the array that has been read from this section of the document.
-
gotNull
void gotNull(String name)
Called when reading a BSON field that exists but has a null value.- Parameters:
name- the name of the field- See Also:
BsonType.NULL
-
gotUndefined
void gotUndefined(String name)
Called when reading a field with aBsonType.UNDEFINEDvalue.- Parameters:
name- the name of the field- See Also:
BsonType.UNDEFINED
-
gotMinKey
void gotMinKey(String name)
Called when reading a field with aBsonType.MIN_KEYvalue.- Parameters:
name- the name of the field
-
gotMaxKey
void gotMaxKey(String name)
Called when reading a field with aBsonType.MAX_KEYvalue.- Parameters:
name- the name of the field
-
gotBoolean
void gotBoolean(String name, boolean value)
Called when reading a field with aBsonType.BOOLEANvalue.- Parameters:
name- the name of the fieldvalue- the field's value
-
gotDouble
void gotDouble(String name, double value)
Called when reading a field with aBsonType.DOUBLEvalue.- Parameters:
name- the name of the fieldvalue- the field's value
-
gotDecimal128
void gotDecimal128(String name, Decimal128 value)
Called when reading a field with aBsonType.DECIMAL128value.- Parameters:
name- the field namevalue- the Decimal128 field value- Since:
- 3.4
- Since server release
- 3.4
-
gotInt
void gotInt(String name, int value)
Called when reading a field with aBsonType.INT32value.- Parameters:
name- the name of the fieldvalue- the field's value
-
gotLong
void gotLong(String name, long value)
Called when reading a field with aBsonType.INT64value.- Parameters:
name- the name of the fieldvalue- the field's value
-
gotDate
void gotDate(String name, long millis)
Called when reading a field with aBsonType.DATE_TIMEvalue.- Parameters:
name- the name of the fieldmillis- the date and time in milliseconds
-
gotString
void gotString(String name, String value)
Called when reading a field with aBsonType.STRINGvalue.- Parameters:
name- the name of the fieldvalue- the field's value
-
gotSymbol
void gotSymbol(String name, String value)
Called when reading a field with aBsonType.SYMBOLvalue.- Parameters:
name- the name of the fieldvalue- the field's value
-
gotRegex
void gotRegex(String name, String pattern, String flags)
Called when reading a field with aBsonType.REGULAR_EXPRESSIONvalue.- Parameters:
name- the name of the fieldpattern- the regex patternflags- the optional flags for the regular expression- MongoDB documentation
- $regex
-
gotTimestamp
void gotTimestamp(String name, int time, int increment)
Called when reading a field with aBsonType.TIMESTAMPvalue.- Parameters:
name- the name of the fieldtime- the time in seconds since epochincrement- an incrementing ordinal for operations within a given second- MongoDB documentation
- Timestamps
-
gotObjectId
void gotObjectId(String name, ObjectId id)
Called when reading a field with aBsonType.OBJECT_IDvalue.- Parameters:
name- the name of the fieldid- the object ID
-
gotDBRef
void gotDBRef(String name, String namespace, ObjectId id)
Invoked whenBSONDecoderencountered aBsonType.DB_POINTERtype field in a byte sequence.- Parameters:
name- the name of the fieldnamespace- the namespace to which reference is pointing toid- the if of the object to which reference is pointing to
-
gotBinaryArray
@Deprecated void gotBinaryArray(String name, byte[] data)
Deprecated. this method is no longer called by the decoderThis method is not used.- Parameters:
name- the name of the fielddata- the field's value
-
gotBinary
void gotBinary(String name, byte type, byte[] data)
Called when reading a field with aBsonType.BINARYvalue. Note that binary values have a subtype, which may determine how the value is processed.- Parameters:
name- the name of the fieldtype- one of the binary subtypes:BsonBinarySubTypedata- the field's value
-
gotUUID
void gotUUID(String name, long part1, long part2)
Called when reading a field with aUUIDvalue. This is a binary value of subtypeBsonBinarySubType.UUID_LEGACY- Parameters:
name- the name of the fieldpart1- the first part of the UUIDpart2- the second part of the UUID
-
gotCode
void gotCode(String name, String code)
Called when reading a field with aBsonType.JAVASCRIPTvalue.- Parameters:
name- the name of the fieldcode- the JavaScript code
-
gotCodeWScope
void gotCodeWScope(String name, String code, Object scope)
Called when reading a field with aBsonType.JAVASCRIPT_WITH_SCOPEvalue.- Parameters:
name- the name of the fieldcode- the JavaScript codescope- a document representing the scope for the code
-
-