JointResultMetadata meta = getJointResultMetadata( left, right );  resultClass = meta.getResultClass( );
	private void initialize( DataEngineImpl dataEngine, Map appContext )			throws DataException	{		int savedCacheOption = DataSetCacheManager.getInstance( ).suspendCache( );		ResultIterator left = getSortedResultIterator( dataEngine,				dataSet.getLeftDataSetDesignName( ),				appContext,				dataSet.getJoinConditions( ),				true );		ResultIterator right = getSortedResultIterator( dataEngine,				dataSet.getRightDataSetDesignName( ),				appContext,				dataSet.getJoinConditions( ),				false );				DataSetCacheManager.getInstance( ).setCacheOption( savedCacheOption );		this.left = left;		this.right = right;		this.joinType = dataSet.getJoinType( );		this.matcher = new JoinConditionMatcher( left.getOdiResult( ),				right.getOdiResult( ),				left.getScope( ),				right.getScope( ),				dataSet.getJoinConditions( ) );		JointResultMetadata meta = getJointResultMetadata( left, right );		resultClass = meta.getResultClass( );	}