// ** Films::connect bool Films::connect( const std::string& host, const std::string& source, const std::string& target ) { m_source = ConnectionPtr( new Connection( host, source ) ); m_target = ConnectionPtr( new Connection( host, target ) ); /* // ** Ensure indices m_source->collection( "items" )->ensureIndex( "idxItemId", DOCUMENT( "itemId" << 1 ), true ); m_source->collection( "users" )->ensureIndex( "idxUserId", DOCUMENT( "userId" << 1 ), true ); m_source->collection( "votes" )->ensureIndex( "idxVoteItemId", DOCUMENT( "itemId" << 1 ), false ); */ // ** Create iterator m_items = new StreamedFilms( *this, m_source ); // ** Get the similarity & shared quartiles DocumentPtr info = m_target->collection( "info" )->findOne( QUERY( "type" << "similarity" ) ); m_similarityQuartiles = info->numbers( "similarity" ); m_sharedQuartiles = info->numbers( "shared" ); return true; }