public Image getImage()

in eclipse/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/nav/model/JcrNode.java [435:473]


	public Image getImage() {
		boolean plainFolder = resource!=null && (resource instanceof IFolder);
		String primaryType = getProperty("jcr:primaryType").getValueAsString();
		boolean typeFolder = probablyFolderType(primaryType);
		boolean typeFile = primaryType!=null && ((primaryType.equals("nt:file") || primaryType.equals("nt:resource") || primaryType.equals("sling:File")));
		typeFile |= (resource!=null && primaryType==null);
		boolean typeUnstructured = primaryType!=null && ((primaryType.equals("nt:unstructured")));
		
        boolean isVaultFile = resource != null && isVaultFile(resource);
		
		String mimeType = null;
		mimeType = getJcrContentProperty("jcr:mimeType");
		if (mimeType == null) {
			mimeType = getProperty("jcr:mimeType").getValueAsString();
		}
		
		if (typeUnstructured) {
            return WhitelabelSupport.getJcrNodeIcon().createImage();
		} else if (plainFolder || typeFolder) {
			return workbenchLabelProvider.getImage(ProjectUtil.getSyncDirectory(getProject()));
		} else if (typeFile && resource!=null) {
			if (mimeType!=null && mimeType.length()!=0) {
				ImageDescriptor desc = getImageDescriptor(resource.getName(), mimeType);
				if (desc!=null) {
					return desc.createImage();
				}
			}
			if (isVaultFile) {
				return WhitelabelSupport.getJcrNodeIcon().createImage();
			}
			return workbenchLabelProvider.getImage(resource);
		} else {
			if (resource!=null && !isVaultFile) {
				return workbenchLabelProvider.getImage(resource);
			}
			return WhitelabelSupport.getJcrNodeIcon().createImage();
		}
		
	}