]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms.ux/src/org/argeo/cms/ux/acr/ContentHierarchicalPart.java
Move JNI from Argeo Commons to Argeo SLC
[lgpl/argeo-commons.git] / org.argeo.cms.ux / src / org / argeo / cms / ux / acr / ContentHierarchicalPart.java
1 package org.argeo.cms.ux.acr;
2
3 import java.util.ArrayList;
4 import java.util.Iterator;
5 import java.util.List;
6
7 import org.argeo.api.acr.Content;
8 import org.argeo.api.acr.NamespaceUtils;
9 import org.argeo.cms.ux.widgets.AbstractDataPart;
10 import org.argeo.cms.ux.widgets.HierarchicalPart;
11
12 public class ContentHierarchicalPart extends AbstractDataPart<Content, Content> implements HierarchicalPart<Content> {
13 @Override
14 public List<Content> getChildren(Content content) {
15 List<Content> res = new ArrayList<>();
16 if (isLeaf(content))
17 return res;
18 if (content == null)
19 return res;
20 for (Iterator<Content> it = content.iterator(); it.hasNext();) {
21 res.add(it.next());
22 }
23
24 return res;
25 }
26
27 protected boolean isLeaf(Content content) {
28 return false;
29 }
30
31 @Override
32 public String getText(Content model) {
33 try {
34 return NamespaceUtils.toPrefixedName(model.getName());
35 } catch (IllegalStateException e) {
36 return model.getName().toString();
37 }
38 }
39
40 }