Bug 180189 Support in memory data set cache.
Currently, Design-Time Data Cache is stored on disks. By performance tests using ramdisk, we found that caching in physical memory can improve the performance of RunAndRender by 30%.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/api/DataEngine.java
*/ 
package org.eclipse.birt.data.engine.api;
import java.io.File;
import java.util.Map;
import org.eclipse.birt.core.exception.BirtException;
import org.eclipse.birt.core.framework.Platform;
import org.eclipse.birt.core.framework.PlatformConfig;
import org.eclipse.birt.data.engine.core.DataException;
import org.eclipse.birt.data.engine.i18n.ResourceConstants;
import org.eclipse.birt.data.engine.olap.api.IPreparedCubeQuery;
import org.eclipse.birt.data.engine.olap.api.query.ICubeQueryDefinition;
import org.mozilla.javascript.Scriptable;
/**
 * Data Engine API class.
 * <br>
 * Provides methods to define data sources and data sets, and to prepare a
 * {@link org.eclipse.birt.data.engine.api.IQueryDefinition}. An application
 * typically needs only one instance of this class, which can be used to 
 * prepare and execute multiple data queries.
 * <p>
 * User of this class must always call the <code>shutdown</code> method when it is
 * done with an instance of this class to ensure release of all data source 
 * connections and related resources.
 */
abstract public class DataEngine
{
	
	/**
	 * Indicates whether data set cache function needs to be used. If yes, put a
	 * true value of this property to appContext and set it by the method of