/** * Checks if the component's children are rendered * @param component The component to check * @return true if one of the first level child's is rendered. */ public static boolean shouldRenderChildren(UIComponent component) { for (int i = 0; i < component.getChildren().size(); i++) { if (component.getChildren().get(i).isRendered()) { return true; } } return false; } }
protected void renderChildren(FacesContext context, UIComponent component) throws IOException { if (component.getChildCount() > 0) { for (int i = 0; i < component.getChildCount(); i++) { UIComponent child = component.getChildren().get(i); renderChild(context, child); } } }
protected boolean visitColumnContent(VisitContext context, VisitCallback callback, UIComponent component) { if (component.getChildCount() > 0) { for (UIComponent grandkid : component.getChildren()) { if (grandkid.visitTree(context, callback)) { return true; } } } return false; }
private Map<String, Object> saveTransientDescendantComponentStates(FacesContext facesContext, Map<String, Object> childStates, Iterator<UIComponent> childIterator, boolean saveChildFacets) { while (childIterator.hasNext()) { UIComponent child = childIterator.next(); if (!child.isTransient()) { Iterator<UIComponent> childsIterator; if (saveChildFacets) { childsIterator = child.getFacetsAndChildren(); } else { childsIterator = child.getChildren().iterator(); } childStates = saveTransientDescendantComponentStates(facesContext, childStates, childsIterator, true); Object state = child.saveTransientState(facesContext); if (state != null) { if (childStates == null) { childStates = new HashMap<>(); } childStates.put(child.getClientId(facesContext), state); } } } return childStates; }
public static void processDecodesOfFacetsAndChilds(UIComponent component, FacesContext context) { if (component.getFacetCount() > 0) { for (UIComponent facet : component.getFacets().values()) { facet.processDecodes(context); } } if (component.getChildCount() > 0) { for (int i = 0, childCount = component.getChildCount(); i < childCount; i++) { UIComponent child = component.getChildren().get(i); child.processDecodes(context); } } }
/** * <p>Searches through the parent's children looking for a child * component having a matching "org.apache.shale.clay.jspid" attribute. * </p> * @param parent owning <code>UIComponent</code> * @param id target jsfid * @return the child <code>UIComponent</code> if a match is found; otherwise; * a <code>null</code> value. */ private UIComponent findComponentByJspId(UIComponent parent, Long id) { Iterator ci = parent.getChildren().iterator(); while (ci.hasNext()) { UIComponent child = (UIComponent) ci.next(); Long jspId = (Long) child.getAttributes().get(Globals.CLAY_JSPID_ATTRIBUTE); if (jspId != null && jspId.equals(id)) { return child; } } return null; } }
for (UIComponent child : component.getChildren()) { if (child instanceof UIParameter && child.isRendered()) { UIParameter param = (UIParameter) child; for (Iterator<String> it = parameters.keySet().iterator(); it.hasNext();) { String paramName = it.next(); params.put(paramName, parameters.get(paramName).get(0)); request.append("PrimeFaces.addSubmitParam('").append(formId).append("',{"); for (Iterator<String> it = params.keySet().iterator(); it.hasNext();) { String key = it.next(); Object value = params.get(key); if (it.hasNext()) { request.append(",");
for (int i = 0; i < component.getChildCount(); i++) { UIComponent child = component.getChildren().get(i); if (child instanceof UIParameter) { UIParameter param = (UIParameter) child; request.append("PrimeFaces.addSubmitParam('").append(formId).append("',{"); for (Iterator<String> it = params.keySet().iterator(); it.hasNext();) { String key = it.next(); String value = EscapeUtils.forJavaScript(String.valueOf(params.get(key))) ; if (it.hasNext()) { request.append(","); Object target = component.getAttributes().get("target"); request.append(".submit('").append(formId).append("'");
boolean restoreChildFacets) { if (iterateFacets && parent.getFacetCount() > 0) { Iterator<UIComponent> childIterator = parent.getFacets().values().iterator(); while (childIterator.hasNext()) { UIComponent component = childIterator.next(); if (parent.getChildCount() > 0) { for (int i = 0; i < parent.getChildCount(); i++) { UIComponent component = parent.getChildren().get(i);
private void applyMassAttribute(FaceletContext context, List<UIComponent> children) { for (UIComponent component : children) { if ((targetClass == null || targetClass.isAssignableFrom(component.getClass())) && component.getValueExpression(name) == null) { Object literalValue = component.getAttributes().get(name); if (literalValue == null || literalValue instanceof Boolean) { Class<?> type = (literalValue == null) ? Object.class : Boolean.class; component.setValueExpression(name, value.getValueExpression(context, type)); } } applyMassAttribute(context, component.getChildren()); } }
private void update() { if (this.iterator == null) { // we must guarantee that 'iterator' is never null if (this.c.getFacetCount() != 0) { this.iterator = this.c.getFacets().values().iterator(); this.childMode = false; } else if (this.c.getChildCount() != 0) { this.iterator = this.c.getChildren().iterator(); this.childMode = true; } else { this.iterator = EMPTY_ITERATOR; this.childMode = true; } } else if (!this.childMode && !this.iterator.hasNext() && this.c.getChildCount() != 0) { this.iterator = this.c.getChildren().iterator(); this.childMode = true; } }
public static void removeFacet(FaceletContext ctx, UIComponent parent, UIComponent c, String facetName) { UIComponent facet = parent.getFacet(facetName); if (Boolean.TRUE.equals(facet.getAttributes().get(FACET_CREATED_UIPANEL_MARKER))) { facet.getChildren().remove(c); } else { parent.getFacets().remove(facetName); } }
private void restoreDescendantState(UIComponent component, FacesContext context) { //force id reset String id = component.getId(); component.setId(id); Map<String, SavedState> saved = (Map<String, SavedState>) getStateHelper().get(PropertyKeys.saved); if (component instanceof EditableValueHolder) { EditableValueHolder input = (EditableValueHolder) component; String clientId = component.getClientId(context); SavedState state = saved.get(clientId); if (state == null) { state = new SavedState(); } input.setValue(state.getValue()); input.setValid(state.isValid()); input.setSubmittedValue(state.getSubmittedValue()); input.setLocalValueSet(state.isLocalValueSet()); } for (UIComponent kid : component.getChildren()) { restoreDescendantState(kid, context); } if (component.getFacetCount() > 0) { for (UIComponent facet : component.getFacets().values()) { restoreDescendantState(facet, context); } } }
if (child instanceof UIColumn) { if (child instanceof Column) { for (UIComponent facet : child.getFacets().values()) { process(context, facet, phaseId); for (UIComponent facet : child.getFacets().values()) { process(context, facet, phaseId); if (child.getChildCount() > 0) { for (UIComponent columnGroupChild : child.getChildren()) { if (columnGroupChild instanceof Row && columnGroupChild.getChildCount() > 0) { for (UIComponent rowChild : columnGroupChild.getChildren()) { if (rowChild instanceof Column && rowChild.getFacetCount() > 0) { for (UIComponent facet : rowChild.getFacets().values()) { process(context, facet, phaseId);
private Map<String, Object> saveFullDescendantComponentStates(FacesContext facesContext, Map<String, Object> stateMap, Iterator<UIComponent> childIterator, boolean saveChildFacets) { while (childIterator.hasNext()) { UIComponent child = childIterator.next(); if (!child.isTransient()) { Iterator<UIComponent> childsIterator; if (saveChildFacets) { childsIterator = child.getFacetsAndChildren(); } else { childsIterator = child.getChildren().iterator(); } stateMap = saveFullDescendantComponentStates(facesContext, stateMap, childsIterator, true); Object state = child.saveState(facesContext); if (state != null) { if (stateMap == null) { stateMap = new HashMap<>(); } stateMap.put(child.getClientId(facesContext), state); } } } return stateMap; }
public static void processValidatorsOfFacetsAndChilds(UIComponent component, FacesContext context) { if (component.getFacetCount() > 0) { for (UIComponent facet : component.getFacets().values()) { facet.processValidators(context); } } if (component.getChildCount() > 0) { for (int i = 0, childCount = component.getChildCount(); i < childCount; i++) { UIComponent child = component.getChildren().get(i); child.processValidators(context); } } }
public void encodeChildren(FacesContext context, UIComponent component) throws IOException { List flatListOfNodes = new LinkedList(); String width = (String) component.getAttributes().get("popupWidth"); flatten(component.getChildren(), flatListOfNodes); processLayer(context, component, width); for (Iterator iter = flatListOfNodes.iterator(); iter.hasNext();) { UIMenuGroup node = (UIMenuGroup) iter.next(); if (node.isRendered() && !node.isDisabled()) processLayer(context, node, width); } }
for (UIComponent child : component.getChildren()) { if (child instanceof UIParameter && child.isRendered()) { UIParameter param = (UIParameter) child; for (Iterator<String> it = parameters.keySet().iterator(); it.hasNext(); ) { String paramName = it.next(); params.put(paramName, parameters.get(paramName).get(0)); request.append("PrimeFaces.addSubmitParam(\"").append(formId).append("\",{"); for (Iterator<String> it = params.keySet().iterator(); it.hasNext(); ) { String key = it.next(); Object value = params.get(key); String valueStr = value == null ? null : EscapeUtils.forJavaScript(value.toString()); if (it.hasNext()) { request.append(",");
Iterator<UIComponent> childIterator = parent.getFacets().values().iterator(); while (childIterator.hasNext()) { UIComponent child = childIterator.next(); if (!child.isTransient()) { childStates = new ArrayList<>( parent.getFacetCount() + parent.getChildCount() - totalChildCount + childEmptyIndex); childStates.add(child.getChildCount() > 0 ? new Object[]{new SavedState((EditableValueHolder) child), saveDescendantComponentStates(child, saveChildFacets, true)} : new Object[]{new SavedState((EditableValueHolder) child), null}); else if (child.getChildCount() > 0 || (saveChildFacets && child.getFacetCount() > 0)) { Object descendantSavedState = saveDescendantComponentStates(child, saveChildFacets, true); if (parent.getChildCount() > 0) { for (int i = 0; i < parent.getChildCount(); i++) { UIComponent child = parent.getChildren().get(i); if (!child.isTransient()) {
@Override public UIComponent resolveComponent(FacesContext context, UIComponent source, UIComponent last, String expression, int options) { UIComponent parent = last.getParent(); if (parent.getChildCount() > 1) { List<UIComponent> children = parent.getChildren(); int index = children.indexOf(last); if (index < parent.getChildCount() - 1) { int nextIndex = -1; do { index++; String className = children.get(index).getClass().getName(); if (!className.contains("UIInstructions") && !className.contains("UILeaf")) { nextIndex = index; } } while (nextIndex == -1 && index < parent.getChildCount() - 1); if (nextIndex != -1) { return children.get(nextIndex); } } } return null; }