Bug 160429 Drag the datasource and dataset and produce an error gradation in data explorer
Details: Drag the datasource and dataset and produce an error gradation in data explorer Step: 1.New 4 datasource named d1, d2, d3, d4. 2.Drag the datasource in data explorer to change the gradation. (1) Drag d1 between d2 and d3. (2) Drag d2 between d3 and d4. (3) Drag d4 between d2 and d3. (4) Drag d4 to the top. (5) Drag d3 between d1 and d2. (6) Drag d3 to the top. Actual result: (1) d1 will be move to bottom. (2) d2 will be move to bottom. (3) d4 will not be move to anywhere. (4) d4 will not be move to anywhere. (5) d3 will be move to bottom. (6) d3 will be move to bottom. Excepted result: The datasource will be move to the correct station.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/api/ModuleHandle.java
}
	/**
	 * Returns the library handle with the given file name. The filename can
	 * include directory information, either relative or absolute directory. And
	 * the file should be on the local disk.
	 * 
	 * @param fileName
	 *            the library file name. The filename can include directory
	 *            information, either relative or absolute directory. And the
	 *            file should be on the local disk.
	 * @return the library handle with the given file name
	 */
	public LibraryHandle findLibrary( String fileName )
	{
		URL url = module.findResource( fileName, IResourceLocator.LIBRARY );
		if ( url == null )
			return null;
		Module library = module.getLibraryByLocation( url.toString( ) );
		if ( library == null )
			return null;
		return (LibraryHandle) library.getHandle( library );
	}
	/**
	 * Shifts the library to new position. This method might affect the style
	 * reference, because the library order is changed.
	 * 
	 * @param library
	 *            the library to shift
	 * @param toPosn
	 *            the new position