public class ExprNodeUtilityRich
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
ExprNodeUtilityRich.MappedPropertyParseResult
Encapsulates the parse result parsing a mapped property as a class and method name with args.
|
Modifier and Type | Field and Description |
---|---|
static ExprDeclaredNode[] |
EMPTY_DECLARED_ARR |
static ExpressionScriptProvided[] |
EMPTY_SCRIPTS |
Constructor and Description |
---|
ExprNodeUtilityRich() |
Modifier and Type | Method and Description |
---|---|
static void |
acceptChain(ExprNodeVisitor visitor,
java.util.List<ExprChainedSpec> chainSpec) |
static void |
acceptChain(ExprNodeVisitorWithParent visitor,
java.util.List<ExprChainedSpec> chainSpec) |
static void |
acceptChain(ExprNodeVisitorWithParent visitor,
java.util.List<ExprChainedSpec> chainSpec,
ExprNode parent) |
static void |
addNonAggregatedProps(ExprNode exprNode,
ExprNodePropOrStreamSet set,
EventType[] types,
ContextPropertyRegistry contextPropertyRegistry) |
static Pair<java.lang.String,ExprNode> |
checkGetAssignmentToProp(ExprNode node) |
static Pair<java.lang.String,ExprNode> |
checkGetAssignmentToVariableOrProp(ExprNode node) |
static java.util.List<ExprNode> |
collectChainParameters(java.util.List<ExprChainedSpec> chainSpec) |
static ExprAndNode |
connectExpressionsByLogicalAnd(java.util.Collection<ExprNode> nodes) |
static ExprNode |
connectExpressionsByLogicalAnd(java.util.List<ExprNode> nodes,
ExprNode optionalAdditionalFilter) |
static ExprNode |
connectExpressionsByLogicalAndWhenNeeded(java.util.Collection<ExprNode> nodes) |
static ExprNodePropOrStreamSet |
getAggregatedProperties(java.util.List<ExprAggregateNode> aggregateNodes) |
static java.util.Map<ExprDeclaredNode,java.util.List<ExprDeclaredNode>> |
getDeclaredExpressionCallHierarchy(ExprDeclaredNode[] declaredExpressions) |
static ExprEvaluator |
getEvaluatorMayCompileWMultiValue(ExprForge[] forges,
EngineImportService engineImportService,
java.lang.Class requestor,
boolean isFireAndForget,
java.lang.String statementName) |
static ExprEvaluator |
getEvaluatorMultiValue(ExprEvaluator[] evaluators) |
static ExprEvaluator[] |
getEvaluatorsMayCompile(ExprForge[] forges,
EngineImportService engineImportService,
java.lang.Class requestor,
boolean isFireAndForget,
java.lang.String statementName) |
static ExprEvaluator[] |
getEvaluatorsMayCompile(ExprNode[] exprNodes,
EngineImportService engineImportService,
java.lang.Class requestor,
boolean isFireAndForget,
java.lang.String statementName) |
static ExprEvaluator[] |
getEvaluatorsMayCompile(java.util.List<ExprNode> exprNodes,
EngineImportService engineImportService,
java.lang.Class requestor,
boolean isFireAndForget,
java.lang.String statementName) |
static ExprEvaluator[] |
getEvaluatorsMayCompileWMultiValue(ExprForge[][] forges,
EngineImportService engineImportService,
java.lang.Class requestor,
boolean isFireAndForget,
java.lang.String statementName) |
static java.util.List<Pair<java.lang.Integer,java.lang.String>> |
getExpressionProperties(ExprNode exprNode,
boolean visitAggregateNodes)
Walk expression returning properties used.
|
static ExprNodePropOrStreamSet |
getGroupByPropertiesValidateHasOne(ExprNode[] groupByNodes) |
static java.util.Set<java.lang.Integer> |
getIdentStreamNumbers(ExprNode child) |
static java.util.Map<java.lang.String,ExprNamedParameterNode> |
getNamedExpressionsHandleDups(java.util.List<ExprNode> parameters) |
static ExprNodePropOrStreamSet |
getNonAggregatedProps(EventType[] types,
java.util.List<ExprNode> exprNodes,
ContextPropertyRegistry contextPropertyRegistry) |
static java.lang.String |
getSubqueryInfoText(int subqueryNum,
ExprSubselectNode subselect) |
static ExprNode |
getValidatedAssignment(OnTriggerSetAssignment assignment,
ExprValidationContext validationContext) |
static void |
getValidatedSubtree(ExprNodeOrigin origin,
ExprNode[][] exprNode,
ExprValidationContext validationContext) |
static void |
getValidatedSubtree(ExprNodeOrigin origin,
ExprNode[] exprNode,
ExprValidationContext validationContext) |
static ExprNode |
getValidatedSubtree(ExprNodeOrigin origin,
ExprNode exprNode,
ExprValidationContext validationContext)
Validates the expression node subtree that has this
node as root.
|
static boolean |
hasRemoveStreamForAggregations(ExprNode child,
StreamTypeService streamTypeService,
boolean unidirectionalJoin)
Returns true if all properties within the expression are witin data window'd streams.
|
static boolean |
hasStreamSelect(java.util.List<ExprNode> exprNodes) |
static boolean |
isAllConstants(java.util.List<ExprNode> parameters) |
static java.lang.String |
isMinimalExpression(ExprNode expression)
Check if the expression is minimal: does not have a subselect, aggregation and does not need view resources
|
static ExprForge |
makeUnderlyingForge(int streamNum,
java.lang.Class resultType,
TableMetadata tableMetadata) |
static ExprNodeUtilityRich.MappedPropertyParseResult |
parseMappedProperty(java.lang.String property)
Parse the mapped property into classname, method and string argument.
|
static void |
replaceChainChildNode(ExprNode nodeToReplace,
ExprNode newNode,
java.util.List<ExprChainedSpec> chainSpec) |
static ExprNodeUtilMethodDesc |
resolveMethodAllowWildcardAndStream(java.lang.String className,
java.lang.Class optionalClass,
java.lang.String methodName,
java.util.List<ExprNode> parameters,
EngineImportService engineImportService,
EventAdapterService eventAdapterService,
int statementId,
boolean allowWildcard,
EventType wildcardType,
ExprNodeUtilResolveExceptionHandler exceptionHandler,
java.lang.String functionName,
TableService tableService,
java.lang.String engineURI) |
static ExprDeclaredNode[] |
toArray(java.util.List<ExprDeclaredNode> declaredNodes) |
static void |
toExpressionString(java.util.List<ExprChainedSpec> chainSpec,
java.io.StringWriter buffer,
boolean prefixDot,
java.lang.String functionName) |
static void |
validate(ExprNodeOrigin origin,
java.util.List<ExprChainedSpec> chainSpec,
ExprValidationContext validationContext) |
static void |
validateNamed(java.util.Map<java.lang.String,ExprNamedParameterNode> namedExpressions,
java.lang.String[] namedParameters) |
static boolean |
validateNamedExpectType(ExprNamedParameterNode namedParameterNode,
java.lang.Class[] expectedTypes) |
static void |
validateNoSpecialsGroupByExpressions(ExprNode[] groupByNodes) |
static void |
validatePlainExpression(ExprNodeOrigin origin,
ExprNode expression) |
static void |
validatePlainExpression(ExprNodeOrigin origin,
ExprNode[] expressions) |
public static final ExprDeclaredNode[] EMPTY_DECLARED_ARR
public static final ExpressionScriptProvided[] EMPTY_SCRIPTS
public static java.util.Map<ExprDeclaredNode,java.util.List<ExprDeclaredNode>> getDeclaredExpressionCallHierarchy(ExprDeclaredNode[] declaredExpressions)
public static Pair<java.lang.String,ExprNode> checkGetAssignmentToProp(ExprNode node)
public static Pair<java.lang.String,ExprNode> checkGetAssignmentToVariableOrProp(ExprNode node) throws ExprValidationException
ExprValidationException
public static ExprNode connectExpressionsByLogicalAnd(java.util.List<ExprNode> nodes, ExprNode optionalAdditionalFilter)
public static ExprAndNode connectExpressionsByLogicalAnd(java.util.Collection<ExprNode> nodes)
public static ExprNode connectExpressionsByLogicalAndWhenNeeded(java.util.Collection<ExprNode> nodes)
public static java.util.List<Pair<java.lang.Integer,java.lang.String>> getExpressionProperties(ExprNode exprNode, boolean visitAggregateNodes)
exprNode
- to walkvisitAggregateNodes
- true to visit aggregation nodespublic static ExprNode getValidatedSubtree(ExprNodeOrigin origin, ExprNode exprNode, ExprValidationContext validationContext) throws ExprValidationException
origin
- validate originexprNode
- nodevalidationContext
- contextExprValidationException
- when the validation failspublic static java.lang.String getSubqueryInfoText(int subqueryNum, ExprSubselectNode subselect)
public static void getValidatedSubtree(ExprNodeOrigin origin, ExprNode[] exprNode, ExprValidationContext validationContext) throws ExprValidationException
ExprValidationException
public static void getValidatedSubtree(ExprNodeOrigin origin, ExprNode[][] exprNode, ExprValidationContext validationContext) throws ExprValidationException
ExprValidationException
public static ExprNode getValidatedAssignment(OnTriggerSetAssignment assignment, ExprValidationContext validationContext) throws ExprValidationException
ExprValidationException
public static ExprNodeUtilityRich.MappedPropertyParseResult parseMappedProperty(java.lang.String property)
property
- is the string property to be passed as a static method invocationpublic static boolean isAllConstants(java.util.List<ExprNode> parameters)
public static ExprNodeUtilMethodDesc resolveMethodAllowWildcardAndStream(java.lang.String className, java.lang.Class optionalClass, java.lang.String methodName, java.util.List<ExprNode> parameters, EngineImportService engineImportService, EventAdapterService eventAdapterService, int statementId, boolean allowWildcard, EventType wildcardType, ExprNodeUtilResolveExceptionHandler exceptionHandler, java.lang.String functionName, TableService tableService, java.lang.String engineURI) throws ExprValidationException
ExprValidationException
public static void validatePlainExpression(ExprNodeOrigin origin, ExprNode expression) throws ExprValidationException
ExprValidationException
public static void validatePlainExpression(ExprNodeOrigin origin, ExprNode[] expressions) throws ExprValidationException
ExprValidationException
public static ExprForge makeUnderlyingForge(int streamNum, java.lang.Class resultType, TableMetadata tableMetadata)
public static boolean hasStreamSelect(java.util.List<ExprNode> exprNodes)
public static void validateNoSpecialsGroupByExpressions(ExprNode[] groupByNodes) throws ExprValidationException
ExprValidationException
public static java.util.Map<java.lang.String,ExprNamedParameterNode> getNamedExpressionsHandleDups(java.util.List<ExprNode> parameters) throws ExprValidationException
ExprValidationException
public static void validateNamed(java.util.Map<java.lang.String,ExprNamedParameterNode> namedExpressions, java.lang.String[] namedParameters) throws ExprValidationException
ExprValidationException
public static boolean validateNamedExpectType(ExprNamedParameterNode namedParameterNode, java.lang.Class[] expectedTypes) throws ExprValidationException
ExprValidationException
public static void acceptChain(ExprNodeVisitor visitor, java.util.List<ExprChainedSpec> chainSpec)
public static void acceptChain(ExprNodeVisitorWithParent visitor, java.util.List<ExprChainedSpec> chainSpec)
public static void acceptChain(ExprNodeVisitorWithParent visitor, java.util.List<ExprChainedSpec> chainSpec, ExprNode parent)
public static void replaceChainChildNode(ExprNode nodeToReplace, ExprNode newNode, java.util.List<ExprChainedSpec> chainSpec)
public static ExprNodePropOrStreamSet getNonAggregatedProps(EventType[] types, java.util.List<ExprNode> exprNodes, ContextPropertyRegistry contextPropertyRegistry)
public static void addNonAggregatedProps(ExprNode exprNode, ExprNodePropOrStreamSet set, EventType[] types, ContextPropertyRegistry contextPropertyRegistry)
public static ExprNodePropOrStreamSet getAggregatedProperties(java.util.List<ExprAggregateNode> aggregateNodes)
public static ExprEvaluator[] getEvaluatorsMayCompile(ExprNode[] exprNodes, EngineImportService engineImportService, java.lang.Class requestor, boolean isFireAndForget, java.lang.String statementName)
public static ExprEvaluator[] getEvaluatorsMayCompile(java.util.List<ExprNode> exprNodes, EngineImportService engineImportService, java.lang.Class requestor, boolean isFireAndForget, java.lang.String statementName)
public static ExprEvaluator[] getEvaluatorsMayCompile(ExprForge[] forges, EngineImportService engineImportService, java.lang.Class requestor, boolean isFireAndForget, java.lang.String statementName)
public static ExprEvaluator[] getEvaluatorsMayCompileWMultiValue(ExprForge[][] forges, EngineImportService engineImportService, java.lang.Class requestor, boolean isFireAndForget, java.lang.String statementName)
public static ExprEvaluator getEvaluatorMayCompileWMultiValue(ExprForge[] forges, EngineImportService engineImportService, java.lang.Class requestor, boolean isFireAndForget, java.lang.String statementName)
public static ExprEvaluator getEvaluatorMultiValue(ExprEvaluator[] evaluators)
public static java.util.Set<java.lang.Integer> getIdentStreamNumbers(ExprNode child)
public static boolean hasRemoveStreamForAggregations(ExprNode child, StreamTypeService streamTypeService, boolean unidirectionalJoin)
child
- expression to interrogatestreamTypeService
- streamsunidirectionalJoin
- indicator unidirection joinpublic static java.lang.String isMinimalExpression(ExprNode expression)
expression
- to inspectpublic static void toExpressionString(java.util.List<ExprChainedSpec> chainSpec, java.io.StringWriter buffer, boolean prefixDot, java.lang.String functionName)
public static void validate(ExprNodeOrigin origin, java.util.List<ExprChainedSpec> chainSpec, ExprValidationContext validationContext) throws ExprValidationException
ExprValidationException
public static java.util.List<ExprNode> collectChainParameters(java.util.List<ExprChainedSpec> chainSpec)
public static ExprDeclaredNode[] toArray(java.util.List<ExprDeclaredNode> declaredNodes)
public static ExprNodePropOrStreamSet getGroupByPropertiesValidateHasOne(ExprNode[] groupByNodes) throws ExprValidationException
ExprValidationException