if (ComponentUtils.isOutputOnly(node)) {
return;
}
final AbstractUITree tree = ComponentUtils.findAncestor(node, AbstractUITree.class);
final String treeId = tree.getClientId(facesContext);
final String nodeStateId = node.nodeStateId(facesContext);
final Map<String, String> requestParameterMap = facesContext.getExternalContext().getRequestParameterMap();
final String id = node.getClientId(facesContext);
final boolean folder = node.isFolder();
// expand state
if (folder) {
boolean expanded = Boolean.parseBoolean((String) requestParameterMap.get(id + "-expanded"));
if (node.isExpanded() != expanded) {
new TreeExpansionEvent(node, node.isExpanded(), expanded).queue();
}
}
// select
if (tree.getSelectableAsEnum() != TreeSelectable.OFF) { // selection
String selected = (String) requestParameterMap.get(treeId + AbstractUITree.SELECT_STATE);
String searchString = ";" + nodeStateId + ";";
if (StringUtils.contains(selected, searchString)) {
// TODO: add selection to Component
//state.addSelection((DefaultMutableTreeNode) node.getValue());