]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/providers/TemplatesTreeContentProvider.java
Some work in progress on AKB UI. Does not work. Must be yet committed to easily switc...
[gpl/argeo-slc.git] / plugins / org.argeo.slc.akb.ui / src / main / java / org / argeo / slc / akb / ui / providers / TemplatesTreeContentProvider.java
index 1f39f33d84ff9841a1dfa28b92e58826cf1e3cda..e35302864bb041c85f8dabbfe184b314bb8d5a3e 100644 (file)
  */
 package org.argeo.slc.akb.ui.providers;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import javax.jcr.Node;
+import javax.jcr.NodeIterator;
 import javax.jcr.RepositoryException;
 
-import org.argeo.jcr.JcrUtils;
 import org.argeo.slc.akb.AkbException;
+import org.argeo.slc.akb.AkbTypes;
 import org.eclipse.jface.viewers.ITreeContentProvider;
 import org.eclipse.jface.viewers.Viewer;
 
@@ -54,8 +56,15 @@ public class TemplatesTreeContentProvider implements ITreeContentProvider {
 
        public Object[] getChildren(Object parent) {
                try {
-                       List<Node> nodes = JcrUtils.nodeIteratorToList(((Node) parent)
-                                       .getNodes());
+                       NodeIterator ni = ((Node) parent).getNodes();
+                       List<Node> nodes = new ArrayList<Node>();
+
+                       while (ni.hasNext()) {
+                               Node currNode = ni.nextNode();
+                               if (!currNode.isNodeType(AkbTypes.AKB_CONNECTOR_FOLDER))
+                                       nodes.add(currNode);
+                       }
+
                        return nodes.toArray();
                } catch (RepositoryException e) {
                        throw new AkbException("Error while getting children nodes", e);
@@ -64,6 +73,7 @@ public class TemplatesTreeContentProvider implements ITreeContentProvider {
 
        public boolean hasChildren(Object parent) {
                try {
+                       // refine this
                        return ((Node) parent).hasNodes();
                } catch (RepositoryException e) {
                        throw new AkbException("Error while checking children nodes", e);