Bug 261506 [CommonNavigator] NavigatorDNDService seems like it can use only interfaces
The NavigatorDNDService class seems like it could use only interface APIs and function properly. Patch attached.
bundles/org.eclipse.ui.navigator/src/org/eclipse/ui/internal/navigator/dnd/NavigatorDnDService.java
dragAssistants = new CommonDragAdapterAssistant[dragDescriptors
				.size()];
		for (Iterator iter = dragDescriptors.iterator(); iter.hasNext();) {
			CommonDragAssistantDescriptor descriptor = (CommonDragAssistantDescriptor) iter
					.next();
			dragAssistants[i++] = descriptor.createDragAssistant();
		}
	}
	
	public synchronized void bindDragAssistant(CommonDragAdapterAssistant anAssistant) {
		if(dragAssistants == null) 
			initializeDragAssistants(); 
		CommonDragAdapterAssistant[] newDragAssistants = new CommonDragAdapterAssistant[dragAssistants.length + 1];
		System.arraycopy(dragAssistants, 0, newDragAssistants, 0, dragAssistants.length);
		newDragAssistants[dragAssistants.length] = anAssistant;
		dragAssistants = newDragAssistants;		
	}
	public CommonDropAdapterAssistant[] findCommonDropAdapterAssistants(
			Object aDropTarget, TransferData aTransferType) {
 
		 
		CommonDropAdapterDescriptor[] descriptors = CommonDropDescriptorManager
				.getInstance().findCommonDropAdapterAssistants(aDropTarget,
						contentService);
		if (descriptors.length == 0) {
			return NO_ASSISTANTS;
		}
		if (LocalSelectionTransfer.getTransfer().isSupportedType(aTransferType)  
						&& LocalSelectionTransfer.getTransfer().getSelection() instanceof IStructuredSelection) {
			return getAssistantsBySelection(descriptors, (IStructuredSelection) LocalSelectionTransfer.getTransfer().getSelection());