Bug 143173 No error for recursive including when exporting a report to a library
Steps to reproduce: 1.New a library named "Lib", add a lable in it 2.New a report, extends Lib.label 3.Export the report, choose target library "Lib" Expected result: Error to warn the recursive including Actual result: The target library includes itself without error
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/api/util/ElementExportUtil.java
* @throws SemanticException
	 *             if error encountered when adding new structure to library or
	 *             value setting.
	 * @throws IOException
	 *             if error encountered when writing file.
	 * @throws IllegalArgumentException
	 *             if the element to export is not in design file.
	 */
	public static void exportStructure( StructureHandle structToExport,
			String libraryFileName, boolean canOverride )
			throws DesignFileException, SemanticException, IOException
	{
		ElementExporter.checkStructureToExport( structToExport );
		DesignSession session = structToExport.getElementHandle( ).getModule( )
				.getSession( );
		LibraryHandle libraryHandle = openOrCreateLibrary( session,
				libraryFileName );
		assert libraryHandle != null;
		exportStructure( structToExport, libraryHandle, canOverride );
		libraryHandle.save( );
		libraryHandle.close( );
	}
	/**
	 * Exports the given structure into one library. The allowed structures are
	 * <code>EmbeddedImage</code>,<code>CustomColor</code> and
	 * <code>ConfigVariable</code>. If the library file is not found, new
	 * library file will be created and saved as the given file name.
	 * 
	 * @param structsToExport
	 *            list of the structure to export, each of which is the instance