Bug 198604 After refresh the library, the link groups key are changed in cube builder[1101]
Description: After refresh the library, the link groups key are changed in cube builder[1101] Build number: 2.2.1.v20070802-0630 Steps to reproduce: 1, New a cube in library, the cube has a joint key between dimension table and facttable 2, Using the cube in a report design 3, Check the joint status in link group 4, Refresh the library in outline 5, Recheck the joint staus in link group Expected result: After step5, the joint status are correct and as same as the status in library Actual result: The dimension table is missing and the joint key is disconnected
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/command/LibraryCommand.java
*/
	private Map dealElementDecendents( Module library, DesignElement parent,
			int actionCode ) throws SemanticException
	{
		if ( !parent.hasDerived( ) )
			return Collections.EMPTY_MAP;
		List allDescendents = new ArrayList( );
		getAllDescdents( parent, allDescendents );
		Map overriddenValues = new HashMap( );
		for ( int i = 0; i < allDescendents.size( ); i++ )
		{
			DesignElement child = (DesignElement) allDescendents.get( i );
			Module tmpModule = child.getRoot( );
			if ( child.hasDerived( ) )
				dealElementDecendents( tmpModule, child, actionCode );
			if ( tmpModule != module )
				continue;
			if ( actionCode == RELOAD_ACTION )
			{
				Map values = unresolveElementDescendent( module, child );
				overriddenValues.put( new Long( child.getID( ) ), values );
			}
			else if ( actionCode == SIMPLE_ACTION )
				throw new LibraryException(
						library,
						new String[]{child.getHandle( module )
								.getDisplayLabel( )},
						LibraryException.DESIGN_EXCEPTION_LIBRARY_HAS_DESCENDENTS );
		}
		return overriddenValues;