@Override public void run(IStructuredSelection selection) { List<?> elements = selection.toList(); if (!CallHierarchy.arePossibleInputElements(elements)) { elements = Collections.EMPTY_LIST; } TypeMember[] members = elements.toArray(new TypeMember[elements.size()]); if (!ActionUtil.areProcessable(getShell(), members)) { return; } CallHierarchyUI.openView(members, getSite().getWorkbenchWindow()); }
@Override protected void doRun( IStructuredSelection selection, Event event, UIInstrumentationBuilder instrumentation) { List<?> elements = selection.toList(); instrumentation.metric("Elements-Length", elements.size()); if (!CallHierarchy.arePossibleInputElements(elements)) { elements = Collections.EMPTY_LIST; } TypeMember[] members = elements.toArray(new TypeMember[elements.size()]); ActionInstrumentationUtilities.record(members, "SelectedMembers", instrumentation); if (!ActionUtil.areProcessable(getShell(), members)) { instrumentation.metric("Problem", "areProcessable returned false"); return; } CallHierarchyUI.openView(members, getSite().getWorkbenchWindow()); }