Bug 213907 Provide a copy constructor for SubqueryDefinition.
Engine need a copy constructor to generate a SubqueryDefinition from an ISubqueryDefinition and change the name of the query.
data/org.eclipse.birt.report.data.adapter/src/org/eclipse/birt/report/data/adapter/impl/DataRequestSessionImpl.java
if(stopSign!=null)
			stopSign.start( );
		
		if ( this.cubeHandleMap.get( query.getName( ) ) != null )
		{
			this.materializeCube( (CubeHandle) this.cubeHandleMap.get( query.getName( ) ),
					appContext, stopSign );
			this.cubeHandleMap.remove( query.getName( ) );
		}
		return this.dataEngine.prepare( query, appContext );
	}
	/*
	 * (non-Javadoc)
	 * @see org.eclipse.birt.report.data.adapter.api.DataRequestSession#getCachedDataSetMetaData(org.eclipse.birt.data.engine.api.IBaseDataSourceDesign, org.eclipse.birt.data.engine.api.IBaseDataSetDesign)
	 */
	public IResultMetaData getCachedDataSetMetaData(
			IBaseDataSourceDesign dataSource, IBaseDataSetDesign dataSet )
			throws BirtException
	{
		return this.dataEngine.getCachedDataSetMetaData( dataSource, dataSet );
	}
	/*
	 * (non-Javadoc)
	 * @see org.eclipse.birt.report.data.adapter.api.DataRequestSession#getCubeQueryUtil()
	 */
	public ICubeQueryUtil getCubeQueryUtil( )
	{
		return new CubeQueryUtil( this );
	}