public class SearchExpressionHandlerImpl extends SearchExpressionHandler
EXPRESSION_SEPARATOR_CHARS, KEYWORD_PREFIX
Constructor and Description |
---|
SearchExpressionHandlerImpl() |
Modifier and Type | Method and Description |
---|---|
protected void |
addHint(SearchExpressionContext searchExpressionContext,
SearchExpressionHint hint) |
protected String |
extractFirstCommand(FacesContext facesContext,
String expression)
Extract the first command from the expression.
|
protected void |
invokeKeywordResolvers(SearchExpressionContext searchExpressionContext,
UIComponent previous,
String keyword,
String remainingExpression,
ContextCallback callback) |
void |
invokeOnComponent(SearchExpressionContext searchExpressionContext,
UIComponent previous,
String expression,
ContextCallback callback)
Resolves multiple |
protected boolean |
isHintSet(SearchExpressionContext searchExpressionContext,
SearchExpressionHint hint) |
boolean |
isPassthroughExpression(SearchExpressionContext searchExpressionContext,
String expression)
Checks if the given expression is a "passtrough expression". |
boolean |
isValidExpression(SearchExpressionContext searchExpressionContext,
String expression)
Checks if the given expression is a valid expression. |
String |
resolveClientId(SearchExpressionContext searchExpressionContext,
String expression)
Resolves to a single clientId or passthrough expression for the given expression. |
List<String> |
resolveClientIds(SearchExpressionContext searchExpressionContext,
String expressions)
Resolves to a |
void |
resolveComponent(SearchExpressionContext searchExpressionContext,
String expression,
ContextCallback callback)
Resolves a single |
void |
resolveComponents(SearchExpressionContext searchExpressionContext,
String expressions,
ContextCallback callback)
Resolves multiple |
String[] |
splitExpressions(FacesContext context,
String expressions)
Splits an string, based on
|
getExpressionSeperatorChars, invokeOnComponent
protected void addHint(SearchExpressionContext searchExpressionContext, SearchExpressionHint hint)
public String resolveClientId(SearchExpressionContext searchExpressionContext, String expression)
SearchExpressionHandler
Resolves to a single clientId or passthrough expression for the given expression.
resolveClientId
in class SearchExpressionHandler
searchExpressionContext
- the SearchExpressionContext
expression
- the search expressionSearchExpressionHint.IGNORE_NO_RESULT
was passed, null
will be returned.public List<String> resolveClientIds(SearchExpressionContext searchExpressionContext, String expressions)
SearchExpressionHandler
Resolves to a List
with clientIds or passthrough expressions for the given expressions.
The expressions will be splitted by SearchExpressionHandler.splitExpressions(javax.faces.context.FacesContext, java.lang.String)
and resolved one by one.
resolveClientIds
in class SearchExpressionHandler
searchExpressionContext
- the SearchExpressionContext
expressions
- the search expressionspublic void resolveComponent(SearchExpressionContext searchExpressionContext, String expression, ContextCallback callback)
SearchExpressionHandler
Resolves a single UIComponent
s for the given
expression. If the component is resolved, the ContextCallback
will be invoked.
resolveComponent
in class SearchExpressionHandler
searchExpressionContext
- the SearchExpressionContext
expression
- the search expressioncallback
- the callback for the resolved componentpublic void resolveComponents(SearchExpressionContext searchExpressionContext, String expressions, ContextCallback callback)
SearchExpressionHandler
Resolves multiple UIComponent
s for the given expression(s).
The expressions will be splitted by SearchExpressionHandler.splitExpressions(javax.faces.context.FacesContext, java.lang.String)
and resolved one by one.
For each resolved component, the ContextCallback
will be invoked.
resolveComponents
in class SearchExpressionHandler
searchExpressionContext
- the SearchExpressionContext
expressions
- the search expression(s)callback
- the callback for each resolved componentpublic void invokeOnComponent(SearchExpressionContext searchExpressionContext, UIComponent previous, String expression, ContextCallback callback)
SearchExpressionHandler
Resolves multiple UIComponent
s for the given
expression. For each resolved component, the ContextCallback
will be invoked.
This method is the most essential method in the API.
It implements the algorithm which handles the recursion of the keywords and id's.
invokeOnComponent
in class SearchExpressionHandler
searchExpressionContext
- the SearchExpressionContext
previous
- The previous resolved component, that will be the base for searchingexpression
- the search expressioncallback
- the callback for the resolved componentprotected void invokeKeywordResolvers(SearchExpressionContext searchExpressionContext, UIComponent previous, String keyword, String remainingExpression, ContextCallback callback)
public String[] splitExpressions(FacesContext context, String expressions)
SearchExpressionHandler
Splits an string, based on
SearchExpressionHandler.getExpressionSeperatorChars(javax.faces.context.FacesContext)
with possible multiple expressions into an array.
splitExpressions
in class SearchExpressionHandler
context
- the FacesContext
for the current requestexpressions
- The expressions as stringpublic boolean isPassthroughExpression(SearchExpressionContext searchExpressionContext, String expression)
SearchExpressionHandler
Checks if the given expression is a "passtrough expression".
A passthrough expression must only be a keyword.
This keyword will not be resolved by the SearchKeywordResolver
and will be returned untouched.
The client is responsible to resolve it later.
isPassthroughExpression
in class SearchExpressionHandler
searchExpressionContext
- the SearchExpressionContext
expression
- the expressionpublic boolean isValidExpression(SearchExpressionContext searchExpressionContext, String expression)
SearchExpressionHandler
Checks if the given expression is a valid expression.
SearchKeywordResolver
matches the requested keywordisValidExpression
in class SearchExpressionHandler
searchExpressionContext
- the SearchExpressionContext
expression
- the expressionprotected boolean isHintSet(SearchExpressionContext searchExpressionContext, SearchExpressionHint hint)
protected String extractFirstCommand(FacesContext facesContext, String expression)
facesContext
- expression
- Comments to: faces-dev@eclipse.org.
Copyright © 2019 Eclipse Foundation. All rights reserved.
Use is subject to license terms.