1 package org
.argeo
.jcr
.ui
.explorer
.browser
;
4 import java
.util
.TreeSet
;
7 import javax
.jcr
.Property
;
8 import javax
.jcr
.PropertyIterator
;
9 import javax
.jcr
.RepositoryException
;
11 import org
.argeo
.ArgeoException
;
12 import org
.argeo
.eclipse
.ui
.jcr
.utils
.JcrItemsComparator
;
13 import org
.eclipse
.jface
.viewers
.IStructuredContentProvider
;
14 import org
.eclipse
.jface
.viewers
.Viewer
;
16 public class PropertiesContentProvider
implements IStructuredContentProvider
{
17 private JcrItemsComparator itemComparator
= new JcrItemsComparator();
19 public void dispose() {
22 public void inputChanged(Viewer viewer
, Object oldInput
, Object newInput
) {
25 public Object
[] getElements(Object inputElement
) {
27 if (inputElement
instanceof Node
) {
28 Set
<Property
> props
= new TreeSet
<Property
>(itemComparator
);
29 PropertyIterator pit
= ((Node
) inputElement
).getProperties();
31 props
.add(pit
.nextProperty());
32 return props
.toArray();
34 return new Object
[] {};
35 } catch (RepositoryException e
) {
36 throw new ArgeoException("Cannot get element for " + inputElement
,