context.addException( e );
context.addException(dataSource,  e );
	public void prepare( Report report )	{		assert ( report != null );		// Handle data sources		ReportDesignHandle handle = report.getReportDesign( ).handle( );		SlotHandle dataSourceSlot = handle.getDataSources( );		for ( int i = 0; i < dataSourceSlot.getCount( ); i++ )		{			try			{				engine.defineDataSource( ModelDteApiAdapter.getInstance( )						.createDataSourceDesign(								(DataSourceHandle) dataSourceSlot.get( i ) ) );			}			catch ( BirtException e )			{				logger.log( Level.SEVERE, e.getMessage( ), e );				context.addException( e );			}					} // End of data source handling		// Handle data sets		SlotHandle dataSetSlot = handle.getDataSets( );		for ( int i = 0; i < dataSetSlot.getCount( ); i++ )		{			try			{				engine.defineDataSet( ModelDteApiAdapter.getInstance( )						.createDataSetDesign(								(DataSetHandle) dataSetSlot.get( i ) ) );			}			catch ( BirtException e )			{				logger.log( Level.SEVERE, e.getMessage( ), e );				context.addException( e );			}					} // End of data set handling		// build report queries		new ReportQueryBuilder( ).build( report, context );		// prepare report queries		for ( int i = 0; i < report.getQueries( ).size( ); i++ )		{			IQueryDefinition query = (IQueryDefinition) report.getQueries( )					.get( i );			try			{				IPreparedQuery preparedQuery = engine.prepare( query );				queryMap.put( query, preparedQuery );			}			catch ( BirtException e )			{				logger.log( Level.SEVERE, e.getMessage( ), e );				context.addException( e );			}					} // end of prepare	}