code: @Override
  	@SuppressWarnings("unchecked")
  	public void initialize() throws Exception {
  		
  		final TypeComparator<IT2> solutionSetComparator;
  		
  		// grab a handle to the hash table from the iteration broker
  		if (taskContext instanceof AbstractIterativeTask) {
  			AbstractIterativeTask<?, ?> iterativeTaskContext = (AbstractIterativeTask<?, ?>) taskContext;
  			String identifier = iterativeTaskContext.brokerKey();
  			Object table = SolutionSetBroker.instance().get(identifier);
  			
  			if (table instanceof CompactingHashTable) {
  				this.hashTable = (CompactingHashTable<IT2>) table;
  				solutionSetSerializer = this.hashTable.getBuildSideSerializer();
  				solutionSetComparator = this.hashTable.getBuildSideComparator().duplicate();
  			}
  			else if (table instanceof JoinHashMap) {
  				this.objectMap = (JoinHashMap<IT2>) table;
  				solutionSetSerializer = this.objectMap.getBuildSerializer();
  				solutionSetComparator = this.objectMap.getBuildComparator().duplicate();
  			}
  			else {
  				throw new RuntimeException("Unrecognized solution set index: " + table);
  			}
  		}
  		else {
  			throw new Exception("The task context of this driver is no iterative task context.");
  		}
  		
  		TaskConfig config = taskContext.getTaskConfig();
  		ClassLoader classLoader = taskContext.getUserCodeClassLoader();
  		
  		TypeComparatorFactory<IT1> probeSideComparatorFactory = config.getDriverComparator(0, classLoader); 
  		
  		this.probeSideSerializer = taskContext.<IT1>getInputSerializer(0).getSerializer();
  		this.probeSideComparator = probeSideComparatorFactory.createComparator();
  
  		ExecutionConfig executionConfig = taskContext.getExecutionConfig();
  		objectReuseEnabled = executionConfig.isObjectReuseEnabled();
  
  		if (objectReuseEnabled) {
  			solutionSideRecord = solutionSetSerializer.createInstance();
  		};
  		
  		TypePairComparatorFactory<IT1, IT2> factory = taskContext.getTaskConfig().getPairComparatorFactory(taskContext.getUserCodeClassLoader());
  		pairComparator = factory.createComparator12(this.probeSideComparator, solutionSetComparator);
  	}
docs: --------------------------------------------------------------------------------------------