Class Query
java.lang.Object
org.apache.nifi.attribute.expression.language.Query
Class used for creating and evaluating NiFi Expression Language. Once a Query
has been created, it may be evaluated using the evaluate methods exactly
once.
-
Nested Class Summary
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprivate static void
addLiteralsAndParameters
(ParameterParser parser, String input, List<Expression> expressions, boolean allowSensitiveParameterReference) static Query
(package private) QueryResult
<?> evaluate
(EvaluationContext evaluationContext) (package private) static String
evaluateExpression
(org.antlr.runtime.tree.Tree tree, Evaluator<?> rootEvaluator, String queryText, EvaluationContext evaluationContext, AttributeValueDecorator decorator) (package private) static String
evaluateExpressions
(String rawValue, Map<String, String> expressionMap, AttributeValueDecorator decorator, Map<String, String> stateVariables, ParameterLookup parameterLookup) (package private) static String
evaluateExpressions
(String rawValue, Map<String, String> valueLookup, AttributeValueDecorator decorator, ParameterLookup parameterLookup) (package private) static String
evaluateExpressions
(String rawValue, Map<String, String> valueLookup, ParameterLookup parameterLookup) static List
<Query.Range> extractEscapedRanges
(String value) static List
<Query.Range> extractExpressionRanges
(String value) private static List
<Query.Range> extractExpressionRanges
(String value, boolean extractEscapeSequences) extractExpressions
(String value) static List
<AttributeExpression.ResultType> extractResultTypes
(String value) (package private) static int
findEndQuoteChar
(String value, int quoteStart) static Query
getResultType
(String value) (package private) org.antlr.runtime.tree.Tree
getTree()
static boolean
isValidExpression
(String value) static PreparedQuery
private static PreparedQuery
static PreparedQuery
toString()
static String
Un-escapes ${...} patterns that were escapedprivate static String
unescapeLeadingDollarSigns
(String value) private static String
unescapeTrailingDollarSigns
(String value, boolean escapeIfAllDollars) static void
validateExpression
(String value, boolean allowSurroundingCharacters)
-
Field Details
-
query
-
tree
private final org.antlr.runtime.tree.Tree tree -
evaluator
-
evaluated
-
-
Constructor Details
-
Query
-
-
Method Details
-
isValidExpression
-
getResultType
public static AttributeExpression.ResultType getResultType(String value) throws AttributeExpressionLanguageParsingException -
extractResultTypes
public static List<AttributeExpression.ResultType> extractResultTypes(String value) throws AttributeExpressionLanguageParsingException -
extractExpressions
public static List<String> extractExpressions(String value) throws AttributeExpressionLanguageParsingException -
extractExpressionRanges
public static List<Query.Range> extractExpressionRanges(String value) throws AttributeExpressionLanguageParsingException -
extractEscapedRanges
public static List<Query.Range> extractEscapedRanges(String value) throws AttributeExpressionLanguageParsingException -
extractExpressionRanges
private static List<Query.Range> extractExpressionRanges(String value, boolean extractEscapeSequences) throws AttributeExpressionLanguageParsingException -
validateExpression
public static void validateExpression(String value, boolean allowSurroundingCharacters) throws AttributeExpressionLanguageParsingException - Parameters:
value
- expression to validateallowSurroundingCharacters
- whether to allow surrounding chars- Throws:
AttributeExpressionLanguageParsingException
- if problems parsing given expression
-
findEndQuoteChar
-
evaluateExpression
static String evaluateExpression(org.antlr.runtime.tree.Tree tree, Evaluator<?> rootEvaluator, String queryText, EvaluationContext evaluationContext, AttributeValueDecorator decorator) throws ProcessException - Throws:
ProcessException
-
evaluateExpressions
static String evaluateExpressions(String rawValue, Map<String, String> expressionMap, AttributeValueDecorator decorator, Map<String, throws ProcessExceptionString> stateVariables, ParameterLookup parameterLookup) - Throws:
ProcessException
-
evaluateExpressions
static String evaluateExpressions(String rawValue, Map<String, String> valueLookup, ParameterLookup parameterLookup) throws ProcessException- Throws:
ProcessException
-
evaluateExpressions
static String evaluateExpressions(String rawValue, Map<String, String> valueLookup, AttributeValueDecorator decorator, ParameterLookup parameterLookup) throws ProcessException- Throws:
ProcessException
-
unescape
Un-escapes ${...} patterns that were escaped- Parameters:
value
- to un-escape- Returns:
- un-escaped value
-
fromTree
-
unescapeLeadingDollarSigns
-
unescapeTrailingDollarSigns
-
prepareWithParametersPreEvaluated
public static PreparedQuery prepareWithParametersPreEvaluated(String query) throws AttributeExpressionLanguageParsingException -
prepare
public static PreparedQuery prepare(String query) throws AttributeExpressionLanguageParsingException -
prepare
private static PreparedQuery prepare(String rawQuery, boolean escapeParameterReferences) throws AttributeExpressionLanguageParsingException -
addLiteralsAndParameters
private static void addLiteralsAndParameters(ParameterParser parser, String input, List<Expression> expressions, boolean allowSensitiveParameterReference) -
compile
-
getResultType
-
evaluate
-
getTree
org.antlr.runtime.tree.Tree getTree() -
toString
-