@Override public void resolve(SearchKeywordContext context, UIComponent current, String keyword) { try { Matcher matcher = PATTERN.matcher(keyword); if (matcher.matches()) { WidgetVarVisitCallback visitCallback = new WidgetVarVisitCallback(matcher.group(1)); context.getSearchExpressionContext().getFacesContext().getViewRoot().visitTree( SearchExpressionUtils.createVisitContext( context.getSearchExpressionContext().getFacesContext(), SearchExpressionHint.SKIP_UNRENDERED), visitCallback); context.invokeContextCallback(visitCallback.getComponent()); } else { throw new FacesException("Expression does not match following pattern @widgetVar(var). Expression: \"" + keyword + "\""); } } catch (Exception e) { throw new FacesException("Expression does not match following pattern @widgetVar(var). Expression: \"" + keyword + "\"", e); } } }
@Override public void resolve(SearchKeywordContext expressionContext, UIComponent current, String keyword) { expressionContext.invokeContextCallback( expressionContext.getSearchExpressionContext().getFacesContext().getViewRoot()); }
@Override public void resolve(SearchKeywordContext searchKeywordContext, UIComponent current, String keyword) { searchKeywordContext.invokeContextCallback( searchKeywordContext.getSearchExpressionContext().getFacesContext().getViewRoot()); }
@Override public void resolve(SearchKeywordContext searchKeywordContext, UIComponent current, String keyword) { searchKeywordContext.invokeContextCallback( searchKeywordContext.getSearchExpressionContext().getFacesContext().getViewRoot()); }
@Override public void resolve(SearchKeywordContext searchKeywordContext, UIComponent current, String keyword) { searchKeywordContext.invokeContextCallback( searchKeywordContext.getSearchExpressionContext().getFacesContext().getViewRoot()); }
@Override public VisitResult visit(VisitContext context, UIComponent target) { if (targetId.equals(target.getId())) { expressionContext.invokeContextCallback(target); if (expressionContext.getSearchExpressionContext().getExpressionHints() != null && expressionContext.getSearchExpressionContext().getExpressionHints().contains( SearchExpressionHint.RESOLVE_SINGLE_COMPONENT)) { return VisitResult.COMPLETE; } return VisitResult.ACCEPT; } else { return VisitResult.ACCEPT; } } });
@Override public VisitResult visit(VisitContext context, UIComponent target) { if (id.equals(target.getId())) { searchKeywordContext.invokeContextCallback(target); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.RESOLVE_SINGLE_COMPONENT)) { return VisitResult.COMPLETE; } return VisitResult.ACCEPT; } else { return VisitResult.ACCEPT; } } });
@Override public VisitResult visit(VisitContext context, UIComponent target) { if (id.equals(target.getId())) { searchKeywordContext.invokeContextCallback(target); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.RESOLVE_SINGLE_COMPONENT)) { return VisitResult.COMPLETE; } return VisitResult.ACCEPT; } else { return VisitResult.ACCEPT; } } });
@Override public VisitResult visit(VisitContext context, UIComponent target) { if (id.equals(target.getId())) { searchKeywordContext.invokeContextCallback(target); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.RESOLVE_SINGLE_COMPONENT)) { return VisitResult.COMPLETE; } return VisitResult.ACCEPT; } else { return VisitResult.ACCEPT; } } });
@Override public void resolve(SearchKeywordContext context, UIComponent current, String keyword) { context.setKeywordResolved(false); for (int i = 0; i < resolvers.size(); i++) { SearchKeywordResolver resolver = resolvers.get(i); if (resolver.isResolverForKeyword(context.getSearchExpressionContext(), keyword)) { resolver.resolve(context, current, keyword); if (context.isKeywordResolved()) { return; } } } }
@Override public void resolve(SearchKeywordContext context, UIComponent current, String keyword) { context.setKeywordResolved(false); for (int i = 0; i < resolvers.size(); i++) { SearchKeywordResolver resolver = resolvers.get(i); if (resolver.isResolverForKeyword(context.getSearchExpressionContext(), keyword)) { resolver.resolve(context, current, keyword); if (context.isKeywordResolved()) { return; } } } }
@Override public void resolve(SearchKeywordContext context, UIComponent current, String keyword) { context.setKeywordResolved(false); for (int i = 0; i < resolvers.size(); i++) { SearchKeywordResolver resolver = resolvers.get(i); if (resolver.isResolverForKeyword(context.getSearchExpressionContext(), keyword)) { resolver.resolve(context, current, keyword); if (context.isKeywordResolved()) { return; } } } }
@Override public void resolve(SearchKeywordContext context, UIComponent current, String keyword) { try { Matcher matcher = PATTERN.matcher(keyword); if (matcher.matches()) { WidgetVarVisitCallback visitCallback = new WidgetVarVisitCallback(matcher.group(1)); context.getSearchExpressionContext().getFacesContext().getViewRoot().visitTree( SearchExpressionUtils.createVisitContext( context.getSearchExpressionContext().getFacesContext(), SearchExpressionHint.SKIP_UNRENDERED), visitCallback); context.invokeContextCallback(visitCallback.getComponent()); } else { throw new FacesException("Expression does not match following pattern @widgetVar(var). Expression: \"" + keyword + "\""); } } catch (Exception e) { throw new FacesException("Expression does not match following pattern @widgetVar(var). Expression: \"" + keyword + "\"", e); } } }
@Override public void resolve(SearchKeywordContext expressionContext, UIComponent current, String keyword) FacesContext facesContext = expressionContext.getSearchExpressionContext().getFacesContext(); if (expressionContext.getSearchExpressionContext().getExpressionHints() != null && expressionContext.getSearchExpressionContext().getExpressionHints().contains( SearchExpressionHint.SKIP_VIRTUAL_COMPONENTS)) expressionContext.getSearchExpressionContext().getVisitHints()), new VisitCallback()
@Override public void resolve(SearchKeywordContext searchKeywordContext, UIComponent current, String keyword) { FacesContext facesContext = searchKeywordContext.getSearchExpressionContext().getFacesContext(); String id = extractId(keyword); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.SKIP_VIRTUAL_COMPONENTS)) { // Avoid visit tree because in this case we need real component instances. // This means components inside UIData will not be scanned. findWithId(facesContext, id, current, searchKeywordContext.getCallback()); } else { current.visitTree( VisitContext.createVisitContext(facesContext, null, searchKeywordContext.getSearchExpressionContext().getVisitHints()), new VisitCallback() { @Override public VisitResult visit(VisitContext context, UIComponent target) { if (id.equals(target.getId())) { searchKeywordContext.invokeContextCallback(target); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.RESOLVE_SINGLE_COMPONENT)) { return VisitResult.COMPLETE; } return VisitResult.ACCEPT; } else { return VisitResult.ACCEPT; } } }); } searchKeywordContext.setKeywordResolved(true); }
@Override public void resolve(SearchKeywordContext searchKeywordContext, UIComponent current, String keyword) { FacesContext facesContext = searchKeywordContext.getSearchExpressionContext().getFacesContext(); String id = extractId(keyword); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.SKIP_VIRTUAL_COMPONENTS)) { // Avoid visit tree because in this case we need real component instances. // This means components inside UIData will not be scanned. findWithId(facesContext, id, current, searchKeywordContext.getCallback()); } else { current.visitTree( VisitContext.createVisitContext(facesContext, null, searchKeywordContext.getSearchExpressionContext().getVisitHints()), new VisitCallback() { @Override public VisitResult visit(VisitContext context, UIComponent target) { if (id.equals(target.getId())) { searchKeywordContext.invokeContextCallback(target); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.RESOLVE_SINGLE_COMPONENT)) { return VisitResult.COMPLETE; } return VisitResult.ACCEPT; } else { return VisitResult.ACCEPT; } } }); } searchKeywordContext.setKeywordResolved(true); }
@Override public void resolve(SearchKeywordContext searchKeywordContext, UIComponent current, String keyword) { FacesContext facesContext = searchKeywordContext.getSearchExpressionContext().getFacesContext(); String id = extractId(keyword); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.SKIP_VIRTUAL_COMPONENTS)) { // Avoid visit tree because in this case we need real component instances. // This means components inside UIData will not be scanned. findWithId(facesContext, id, current, searchKeywordContext.getCallback()); } else { current.visitTree( VisitContext.createVisitContext(facesContext, null, searchKeywordContext.getSearchExpressionContext().getVisitHints()), new VisitCallback() { @Override public VisitResult visit(VisitContext context, UIComponent target) { if (id.equals(target.getId())) { searchKeywordContext.invokeContextCallback(target); if (isHintSet(searchKeywordContext.getSearchExpressionContext(), SearchExpressionHint.RESOLVE_SINGLE_COMPONENT)) { return VisitResult.COMPLETE; } return VisitResult.ACCEPT; } else { return VisitResult.ACCEPT; } } }); } searchKeywordContext.setKeywordResolved(true); }
@Override public void resolve(SearchKeywordContext context, UIComponent current, String keyword) { context.setKeywordResolved(false); int sz = this.size; for (int i = 0; i < sz; i++) { if (this.resolvers[i].isResolverForKeyword(context.getSearchExpressionContext(), keyword)) { this.resolvers[i].resolve(context, current, keyword); if (context.isKeywordResolved()) { return; } } } }
if (childNumber + 1 > current.getChildCount()) { throw new FacesException("Component with clientId \"" + current.getClientId(searchKeywordContext.getSearchExpressionContext().getFacesContext()) + "\" has fewer children as \"" + childNumber + "\". Expression: \"" + keyword + "\""); + current.getClientId(searchKeywordContext.getSearchExpressionContext().getFacesContext()) + "\" has fewer children as \"" + childNumber + "\". Expression: \"" + keyword + "\"");
if (childNumber + 1 > current.getChildCount()) { throw new FacesException("Component with clientId \"" + current.getClientId(searchKeywordContext.getSearchExpressionContext().getFacesContext()) + "\" has fewer children as \"" + childNumber + "\". Expression: \"" + keyword + "\""); + current.getClientId(searchKeywordContext.getSearchExpressionContext().getFacesContext()) + "\" has fewer children as \"" + childNumber + "\". Expression: \"" + keyword + "\"");