if (!fHierarchyLifeCycle.getHierarchy().exists()) {
if (fHierarchyLifeCycle.getHierarchy() == null || !fHierarchyLifeCycle.getHierarchy().exists()) {
	private void doTypeHierarchyChangedOnViewers(IType[] changedTypes) {		if (changedTypes == null) {			// hierarchy change			if (!fHierarchyLifeCycle.getHierarchy().exists()) {				clearInput();			} else {				try {					fHierarchyLifeCycle.ensureRefreshedTypeHierarchy(fInputElement);				} catch (JavaModelException e) {					JavaPlugin.log(e.getStatus());					clearInput();					return;				}				updateHierarchyViewer();			}		} else {			// elements in hierarchy modified			if (getCurrentViewer().isMethodFiltering()) {				if (changedTypes.length == 1) {					getCurrentViewer().refresh(changedTypes[0]);				} else {					updateHierarchyViewer();				}			} else {				getCurrentViewer().update(changedTypes, new String[] { IBasicPropertyConstants.P_TEXT, IBasicPropertyConstants.P_IMAGE } );			}		}		}	