Bug 201379 Different process way for maxlevels 0 and maxrows 0[0003]
Description: Different process way for maxlevels and maxrows when they are set to 0 Build number:2.2.1.v20070828 Steps to reproduce: 1. Deploy BIRT. 2. set BIRT_VIEWER_MAX_ROWS as 0 3. set BIRT_VIEWER_MAX_CUBE_LEVELS as 0. 4. Preview report containing table and crosstab. Expected result: Same effect for these two properties Actual result: Return all rows for table and return 0 for crosstab Error log:n/a
data/org.eclipse.birt.report.data.adapter/src/org/eclipse/birt/report/data/adapter/impl/DataRequestSessionImpl.java
* To use the limit fetch size setting in appContext on all levels' member
	 * number. Construct top_N filter definition base on all levels along edge.
	 * 
	 * @param edge
	 * @param size
	 * @return
	 */
	private List fetchFilterList( IEdgeDefinition edge, int size )
	{
		List filterExpression = new ArrayList( );
		if ( edge != null )
		{
			Iterator dimensionIter = edge.getDimensions( ).iterator( );
			while ( dimensionIter.hasNext( ) )
			{
				IDimensionDefinition dim = (IDimensionDefinition) dimensionIter.next( );
				String dimensionName = dim.getName( );
				Iterator hierarchyIter = dim.getHierarchy( ).iterator( );
				while ( hierarchyIter.hasNext( ) )
				{
					IHierarchyDefinition hierarchy = (IHierarchyDefinition) hierarchyIter.next( );
					Iterator levelIter = hierarchy.getLevels( ).iterator( );
					while ( levelIter.hasNext( ) )
					{
						ILevelDefinition level = (ILevelDefinition) levelIter.next( );
						String levelName = level.getName( );
						filterExpression.add( new FilterDefinition( new ConditionalExpression( ExpressionUtil.createJSDimensionExpression( dimensionName,
								levelName ),
								IConditionalExpression.OP_TOP_N,
								String.valueOf( size ) ) ) );