diff options
Diffstat (limited to 'src/mongo/client/examples/first.cpp')
-rw-r--r-- | src/mongo/client/examples/first.cpp | 105 |
1 files changed, 0 insertions, 105 deletions
diff --git a/src/mongo/client/examples/first.cpp b/src/mongo/client/examples/first.cpp deleted file mode 100644 index d5537dcad25..00000000000 --- a/src/mongo/client/examples/first.cpp +++ /dev/null @@ -1,105 +0,0 @@ -// first.cpp - -/* Copyright 2009 10gen Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * this is a good first example of how to use mongo from c++ - */ - -#include <iostream> -#include <cstdlib> - -#include "mongo/client/dbclient.h" - -using namespace std; - -void insert( mongo::DBClientConnection & conn , const char * name , int num ) { - mongo::BSONObjBuilder obj; - obj.append( "name" , name ); - obj.append( "num" , num ); - conn.insert( "test.people" , obj.obj() ); - std::string e = conn.getLastError(); - if( !e.empty() ) { - cout << "insert failed: " << e << endl; - exit(EXIT_FAILURE); - } -} - -int main( int argc, const char **argv ) { - - const char *port = "27017"; - if ( argc != 1 ) { - if ( argc != 3 ) { - cout << "need to pass port as second param" << endl; - return EXIT_FAILURE; - } - port = argv[ 2 ]; - } - - mongo::Status status = mongo::client::initialize(); - if ( !status.isOK() ) { - std::cout << "failed to initialize the client driver: " << status.toString() << endl; - return EXIT_FAILURE; - } - - mongo::DBClientConnection conn; - string errmsg; - if ( ! conn.connect( string( "127.0.0.1:" ) + port , errmsg ) ) { - cout << "couldn't connect : " << errmsg << endl; - return EXIT_FAILURE; - } - - { - // clean up old data from any previous tests - mongo::BSONObjBuilder query; - conn.remove( "test.people" , query.obj() ); - } - - insert( conn , "eliot" , 15 ); - insert( conn , "sara" , 23 ); - - { - mongo::BSONObjBuilder query; - std::auto_ptr<mongo::DBClientCursor> cursor = conn.query( "test.people" , query.obj() ); - if (!cursor.get()) { - cout << "query failure" << endl; - return EXIT_FAILURE; - } - - cout << "using cursor" << endl; - while ( cursor->more() ) { - mongo::BSONObj obj = cursor->next(); - cout << "\t" << obj.jsonString() << endl; - } - - } - - { - mongo::BSONObjBuilder query; - query.append( "name" , "eliot" ); - mongo::BSONObj res = conn.findOne( "test.people" , query.obj() ); - cout << res.isEmpty() << "\t" << res.jsonString() << endl; - } - - { - mongo::BSONObjBuilder query; - query.append( "name" , "asd" ); - mongo::BSONObj res = conn.findOne( "test.people" , query.obj() ); - cout << res.isEmpty() << "\t" << res.jsonString() << endl; - } - - return EXIT_SUCCESS; -} |