Bug 46351 Call Hierarchy must not implement IViewSite [call hierarchy]
I20031105 The call hierarchy component implements IViewSite which is not allowed. There seems to be no reason for doing so: the CallHierarchyViewPart should directly set the selection provider to its site.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/callhierarchy/CallHierarchyUI.java
input= candidates[0];
        }
        if (input == null)
            return null;
            
        return openInViewPart(window, input);
    }
    private static void openEditor(Object input, boolean activate) throws PartInitException, JavaModelException {
        IEditorPart part= EditorUtility.openInEditor(input, activate);
        if (input instanceof IJavaElement)
            EditorUtility.revealInEditor(part, (IJavaElement) input);
    }
    
    private static CallHierarchyViewPart openInViewPart(IWorkbenchWindow window, IJavaElement input) {
        IWorkbenchPage page= window.getActivePage();
        try {
            CallHierarchyViewPart result= (CallHierarchyViewPart)page.showView(CallHierarchyViewPart.ID_CALL_HIERARCHY);
            result.setMethod((IMethod)input);
            openEditor(input, false);
            return result;
        } catch (CoreException e) {
            ExceptionHandler.handle(e, window.getShell(), 
                CallHierarchyMessages.getString("CallHierarchyUI.error.open_view"), e.getMessage()); 
        }
        return null;        
    }
    
    
}