]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - NodeLabelProvider.java
71157aae14015ee393770b496203e1ef52a01fa9
1 package org
.argeo
.eclipse
.ui
.jcr
.browser
;
4 import javax
.jcr
.RepositoryException
;
5 import javax
.jcr
.nodetype
.NodeType
;
7 import org
.argeo
.ArgeoException
;
8 import org
.argeo
.eclipse
.ui
.jcr
.JcrUiPlugin
;
9 import org
.eclipse
.jface
.viewers
.LabelProvider
;
10 import org
.eclipse
.swt
.graphics
.Image
;
12 public class NodeLabelProvider
extends LabelProvider
{
14 public final static Image NODE
= JcrUiPlugin
.getImageDescriptor(
15 "icons/node.gif").createImage();
16 public final static Image FOLDER
= JcrUiPlugin
.getImageDescriptor(
17 "icons/folder.gif").createImage();
18 public final static Image FILE
= JcrUiPlugin
.getImageDescriptor(
19 "icons/file.gif").createImage();
20 public final static Image BINARY
= JcrUiPlugin
.getImageDescriptor(
21 "icons/binary.png").createImage();
23 public String
getText(Object element
) {
25 if (element
instanceof Node
) {
26 Node node
= (Node
) element
;
27 String label
= node
.getName();
29 // Item primaryItem = node.getPrimaryItem();
30 // label = primaryItem instanceof Property ? ((Property)
32 // .getValue().getString()
35 // + ")" : node.getName();
36 // } catch (RepositoryException e) {
37 // label = node.getName();
39 StringBuffer mixins
= new StringBuffer("");
40 for (NodeType type
: node
.getMixinNodeTypes())
41 mixins
.append(' ').append(type
.getName());
43 // System.out.println("URL : "
44 // + createDownloadHtml("test.pdf", "Downlad"));
46 return label
+ " [" + node
.getPrimaryNodeType().getName()
48 // + createDownloadHtml("test.pdf", "Downlad");
50 return element
.toString();
51 } catch (RepositoryException e
) {
52 throw new ArgeoException("Cannot get text for of " + element
, e
);
57 public Image
getImage(Object element
) {
58 if (element
instanceof Node
) {
59 Node node
= (Node
) element
;
61 if (node
.getPrimaryNodeType().isNodeType(NodeType
.NT_FOLDER
))
63 else if (node
.getPrimaryNodeType().isNodeType(NodeType
.NT_FILE
))
65 else if (node
.getPrimaryNodeType().isNodeType(
66 NodeType
.NT_RESOURCE
))
68 } catch (RepositoryException e
) {
72 } else if (element
instanceof RepositoryNode
) {
73 if (((RepositoryNode
) element
).getDefaultSession() == null)
74 return RepositoryNode
.REPOSITORY_DISCONNECTED
;
76 return RepositoryNode
.REPOSITORY_CONNECTED
;
77 } else if (element
instanceof WorkspaceNode
) {
78 if (((WorkspaceNode
) element
).getSession() == null)
79 return WorkspaceNode
.WORKSPACE_DISCONNECTED
;
81 return WorkspaceNode
.WORKSPACE_CONNECTED
;
83 return super.getImage(element
);