I was wondering what the Java driver's equivalent to the Mongo JavaScript shell's Object.bsonsize( doc ) method? For example, what is the Java code to perform the following:
bobk-mbp:~ bobk$ mongo
MongoDB shell version: 2.0.4
connecting to: test
PRIMARY> use devices;
switched to db devices
PRIMARY> Object.bsonsize( db.profiles.findOne( { _id: "REK_0001" } ) );
186
PRIMARY> Object.bsonsize( db.profiles.findOne( { _id: "REK_0002" } ) );
218
PRIMARY>
How do I perform this same basic use case with the MongoDB Java Driver. Its not obvious through the JavaDocs.
There's nothing quite as clean as what's available in the shell, but this will work:
DBObject obj = coll.findOne();
int bsonSize = DefaultDBEncoder.FACTORY.create().
writeObject(new BasicOutputBuffer(), obj));