Bug 180842 Config memory buffer size in data engine execution.
To tuning the performance, it is necessary for DtE to expose API for clients to config the size of memory it used to store the final result set. A new AppContext string, "org.eclipse.birt.data.cache.memory.size" is proposed. The new appcontext entry only accept positive integer as input, the unit of which would be MB.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/odi/IEventHandler.java
import org.eclipse.birt.data.engine.core.DataException;
import org.eclipse.birt.data.engine.impl.IExecutorHelper;
/**
 * Event handler for ODI layer. In ODI layer, since higher caller sometimes
 * needs to do something in the process of ODI, it can be achieved by creating
 * an instance of IEventHandler, and pass it to the ODI as the paramter of query
 * execution.
 * 
 * Acutally this is the hook put into the lower layer by higher layer. This hook
 * can be used in two ways,
 * 
 * 1: higher layer can register a notification request in the lower layer. So
 * when some specific things happen, higher layer will have opportunity to do
 * some operations.
 * 
 * 2: higher layer can provide some service which is unvailable in lower layer.
 * This service is specific to the higher layer, so lower layer has to use the
 * service provided by the higher layer.
 */
public interface IEventHandler
{
	
	
	
	/**
	 * The result set transformation can be divided into two phrases, one is for
	 * data set, and the other is for table/list. This function will be called
	 * in the middle of the two phrases.
	 * 
	 * @param resultIterator