Bug 416703 Mongodb : Display correctly the Number data type
data/org.eclipse.birt.data.oda.mongodb/src/org/eclipse/birt/data/oda/mongodb/internal/impl/MDbMetaData.java
Map<String,FieldMetaData> toResultFieldsMD )
    {
        if( toResultFieldsMD == null )
            toResultFieldsMD = new LinkedHashMap<String,FieldMetaData>();
        for( FieldMetaData fieldMD : fromDocMetaData.m_fieldsMetaData.values() )
        {
            toResultFieldsMD.put( fieldMD.getFullName(), fieldMD );
            if( fieldMD.hasChildDocuments() )
                toResultFieldsMD = flattenFieldsMetaData( fieldMD.getChildMetaData(), toResultFieldsMD );
        }
        return toResultFieldsMD;
    }
    /**
     * An internal utility method.
     * Discover and return the metadata of one or more documents in the specified MongoDB cursor, 
     * up to the searchLimit count.
     * @param resultCursor  an inactive MongoDB cursor, before having executed query, to iterate the results
     *                      expects caller to have already set searchLimit and other options on the result cursor
     * @return  a DocumentsMetaData representing all the fields and corresponding metadata 
     *          found in the specified iterated cursor
     */
    public static DocumentsMetaData getMetaData( DBCursor resultCursor )
    {
        if( resultCursor == null )
            return sm_emptyFields;
        
        DocumentsMetaData newMetaData = sm_factory.new DocumentsMetaData();
        
        while( resultCursor.hasNext() )
        {