Bug 213126 Add support for DataEngine-leve dataset cache
In many cases the DataEngine-leve dataset cache is useful which ensure that a dataset is executed one time during rendering one report. To support this feature a new dataset property should be added. The Birt customer can choose whether this dataset need to be cached or not by setting the property in deisgn time.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/writer/ModuleWriter.java
Object value = obj.getLocalProperty( getModule( ), propName );
		if ( value == null )
			return;
		String xml = propDefn.getXmlValue( getModule( ), value );
		if ( xml == null )
			return;
		String encryptionID = null;
		if ( propDefn.isEncryptable( ) )
		{
			encryptionID = obj.getEncryptionID( (ElementPropertyDefn) propDefn );
			tag = DesignSchemaConstants.ENCRYPTED_PROPERTY_TAG;
			
			xml = (String) ModelUtil.encryptProperty( obj,
					(ElementPropertyDefn) propDefn, encryptionID, xml );
		}
		if ( tag == null )
			tag = ModelUtil.getTagByPropertyType( propDefn );
		if ( propDefn.getTypeCode( ) == IPropertyType.SCRIPT_TYPE )
			cdata = true;
		writeEntry( tag, propDefn.getName( ), encryptionID, xml, cdata );
	}
	/**
	 * Writes the structure memeber.
	 * 
	 * @param struct
	 *            the structure
	 * @param tag
	 *            the tag to write
	 * @param memberName
	 *            the member name