diff options
author | Michael Stephens <mike@mindleak.com> | 2009-08-20 10:34:13 +0800 |
---|---|---|
committer | Eliot <eliot@10gen.com> | 2009-08-20 10:53:37 +0800 |
commit | 45683d835df3b17832f29dac33f27bd7e4167136 (patch) | |
tree | fa323ace5f87b883c189ef6c0f9a1be624c5b40e | |
parent | 11b657f18d3d5824eed845caa7c51bdb72e43f7b (diff) | |
download | mongo-45683d835df3b17832f29dac33f27bd7e4167136.tar.gz |
getMetadata() for GridFile
Signed-off-by: Eliot <eliot@10gen.com>
-rw-r--r-- | client/gridfs.cpp | 9 | ||||
-rw-r--r-- | client/gridfs.h | 2 |
2 files changed, 11 insertions, 0 deletions
diff --git a/client/gridfs.cpp b/client/gridfs.cpp index f4eb0093517..5c444296e36 100644 --- a/client/gridfs.cpp +++ b/client/gridfs.cpp @@ -124,6 +124,15 @@ namespace mongo { return _client.query( _filesNS.c_str() , o ); } + BSONObj GridFile::getMetadata(){ + BSONElement meta_element = _obj["metadata"]; + if( meta_element.eoo() ){ + return BSONObj(); + } + + return meta_element.embeddedObject(); + } + Chunk GridFile::getChunk( int n ){ _exists(); BSONObjBuilder b; diff --git a/client/gridfs.h b/client/gridfs.h index 8f40004132b..2ed198d67e7 100644 --- a/client/gridfs.h +++ b/client/gridfs.h @@ -129,6 +129,8 @@ namespace mongo { return _obj["md5"].str(); } + BSONObj getMetadata(); + int getNumChunks(){ return (int) ceil( (double)getContentLength() / (double)getChunkSize() ); } |