this.groupCalculationUtil.getResultSetCache( ) );
this.groupCalculationUtil.getResultSetCache( ).getCount( ) );
	public int[] getCurrentGroupInfo( int groupLevel ) throws DataException	{		if ( groupLevel == 0 )		{			return new int[]{					0,					this.groupCalculationUtil.getResultSetCache( ).getCount( )			};		}		// temporary value		GroupInfo groupInfo;		// first get the index value in specified group level		int groupLevelIndex = this.leafGroupIdx;		for ( int i = groups.length - 1; i > groupLevel - 1; i-- )		{			List parentGroupInfo = groups[i];			groupInfo = (GroupInfo) parentGroupInfo.get( groupLevelIndex );			groupLevelIndex = groupInfo.parent;		}		// start index value in specified group level		// we need it to get the index value of start row id		int startIndex = groupLevelIndex;		// next index value in specified group level		// we need it to get the index value of end row id		int endIndex = startIndex + 1;		startIndex = GroupUtil.getGroupFirstRowIndex( groupLevel,				startIndex,				groups,				this.groupCalculationUtil.getResultSetCache( ) );		endIndex = GroupUtil.getGroupFirstRowIndex( groupLevel,				endIndex,				groups,				this.groupCalculationUtil.getResultSetCache( ) );		// finally we get data between startIndex to endIndex - 1 in dataRows		return new int[]{				startIndex, endIndex		};	}