类com.mongodb.client.model.MapReduceAction源码实例Demo

下面列出了怎么用com.mongodb.client.model.MapReduceAction的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: openbd-core   文件: MongoCollectionMapReduce.java
public cfData execute(cfSession _session, cfArgStructData argStruct ) throws cfmRunTimeException {
	MongoDatabase	db	= getMongoDatabase( _session, argStruct );
	
	String collection	= getNamedStringParam(argStruct, "collection", null);
	if ( collection == null )
		throwException(_session, "please specify a collection");
	
	String map	= getNamedStringParam(argStruct, "map", null );
	if ( map == null )
		throwException(_session, "please specify a map");
	
	String reduce	= getNamedStringParam(argStruct, "reduce", null );
	if ( reduce == null )
		throwException(_session, "please specify a reduce");
	
	String outputcollection	= getNamedStringParam(argStruct, "outputcollection", null );
	if ( outputcollection == null )
		throwException(_session, "please specify a outputcollection");
	
	String action		= getNamedStringParam(argStruct, "type", "replace" ).toLowerCase();
	String finalize	= getNamedStringParam(argStruct, "finalize", null );
	cfData	query		= getNamedParam(argStruct, "query", null );
	
	try{
		MapReduceIterable<Document>	mi	= db.getCollection( collection ).mapReduce( map, reduce );
		
		if ( query != null )
			mi.filter( getDocument( query ) );
		
		if ( finalize != null )
			mi.finalizeFunction( finalize );
		
		mi.collectionName( outputcollection );
		mi.action( MapReduceAction.valueOf( action ) );
		
		
		// Kick start the map reduce
		mi.first();
		
		return cfBooleanData.TRUE;

	} catch (MongoException me){
		throwException(_session, me.getMessage());
		return null;
	}
}
 
 类所在包
 类方法
 同包方法