in CasViewerEclipsePlugin/uimaj-ep-casviewer-core/src/main/java/org/apache/uima/casviewer/ui/internal/index/CasIndexRepoContentProvider.java [114:148]
public boolean hasChildren(Object element)
{
if (element instanceof BaseNode) {
// Check item type
int kind = ((BaseNode)element).getObjectType();
if (kind == IItemTypeConstants.ITEM_TYPE_U_FS_INDEX) {
UFSIndex index = (UFSIndex) ((BaseNode)element).getObject();
// Has FS and sub-indexes ?
if ( index.size() > 0 && ((BaseNode)element).getChildren().size() > 0 ) {
if (showAllIndexes) {
return true;
} else {
// Show sub-indexes having FS
List<BaseNode> nodes = ((BaseNode)element).getChildren();
int count = 0;
for (BaseNode node: nodes) {
if ( ((UFSIndex) node.getObject()).size() > 0 ) {
++count;
}
}
if (count > 0) {
return true;
}
}
}
} else if (kind == IItemTypeConstants.ITEM_TYPE_LABEL_U_FS_INDEX) {
return true;
}
} else if (element instanceof UFSIndex) {
if ( ((UFSIndex) element).size() > 0 ) {
return true;
}
}
return false;
}