private boolean isInterestingReferenceParticipant(IReferenceNode object) { if (object != null) { if (object.getReferenceParticipant() != null) { Object element = object.getReferenceParticipant(); if (element instanceof IAspectDefinition) { IAspectDefinition def = (IAspectDefinition) element; element = BeansModelUtils.getMostSpecificModelElement( def.getAspectStartLineNumber(), def.getAspectEndLineNumber(), (IFile) def.getResource(), null); } AbstractContextStructureBridge bridge = ContextCore.getStructureBridge(element); if (bridge != null) { String handle = bridge.getHandleIdentifier(element); IInteractionElement interestElement = ContextCore.getContextManager().getElement(handle); if (element != null && isInteresting(interestElement)) { return true; } // TODO CD uncomment this if *really* only interested // elements // should be displayed /* * else { return false; } */ } } if (object.getChildren() != null && object.getChildren().length > 0) { for (Object child : object.getChildren()) { if (child instanceof IReferenceNode) { if (isInterestingReferenceParticipant((IReferenceNode) child)) { return true; } } } } } return false; }