return new CachedResultSet( (BaseQuery) this.odiQuery, resultClass, populator, eventHandler );
if ( doesSaveToCache( ) == false ) return new CachedResultSet( (BaseQuery) this.odiQuery, resultClass, populator, eventHandler ); else return new CachedResultSet( (BaseQuery) this.odiQuery, resultClass, new DataSetResultCache( populator, resultClass ), eventHandler );
		protected org.eclipse.birt.data.engine.odi.IResultIterator executeOdiQuery(				IEventHandler eventHandler ) throws DataException		{			JointResultMetadata jrm = getJointResultMetadata( left, right );			resultClass = jrm.getResultClass( );			populator = JointDataSetPopulatorFactory.getBinaryTreeDataSetPopulator( left.getOdiResult( ),					right.getOdiResult( ),					jrm,					matcher,					joinType );			return new CachedResultSet( (BaseQuery) this.odiQuery,					resultClass,					populator,					eventHandler );		}