}
@Override
protected void configureChild(ProcessorDefinition output) {
if (expression != null && expression instanceof ExpressionClause) {
ExpressionClause clause = (ExpressionClause) expression;
if (clause.getExpressionType() != null) {
// if using the Java DSL then the expression may have been set using the
// ExpressionClause which is a fancy builder to define expressions and predicates
// using fluent builders in the DSL. However we need afterwards a callback to
// reset the expression to the expression type the ExpressionClause did build for us
expression = clause.getExpressionType();
// set the correlation expression from the expression type, as the model definition
// would then be accurate
correlationExpression = new ExpressionSubElementDefinition();
correlationExpression.setExpressionType(clause.getExpressionType());
}
}
}