Class ProjectionExpression<T,R>
- java.lang.Object
-
- org.apache.qpid.server.query.engine.parsing.expression.AbstractExpressionNode<T,R>
-
- org.apache.qpid.server.query.engine.parsing.query.ProjectionExpression<T,R>
-
- Type Parameters:
T- Input parameter typeR- Return parameter type
- All Implemented Interfaces:
java.util.function.Function<T,R>,Expression<T,R>,ExpressionNode<T,R>
public class ProjectionExpression<T,R> extends AbstractExpressionNode<T,R>
Contains information about a single item in a SELECT clause
-
-
Field Summary
Fields Modifier and Type Field Description protected int_ordinalOrdinal value-
Fields inherited from class org.apache.qpid.server.query.engine.parsing.expression.AbstractExpressionNode
_metadata
-
-
Constructor Summary
Constructors Constructor Description ProjectionExpression(java.lang.String alias, ExpressionNode<T,R> expression, int ordinal)Constructor stores properties
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Rapply(T object)Evaluated an object against the expressionRapplyAggregation(SelectExpression<T,R> selectExpression, java.util.List<T> items)Evaluates a collection of objects against an aggregation expressionjava.lang.StringgetAlias()Returns expression aliasExpression<T,R>getExpression()Returns wrapped expressionbooleanisOrdinal()voidsetAlias(java.lang.String alias)Setter for aliasjava.lang.StringtoString()-
Methods inherited from class org.apache.qpid.server.query.engine.parsing.expression.AbstractExpressionNode
containsAggregation, ctx, evaluateChild, getAggregations, getChild, getChildren, getParent, isAccessor, isInstantlyEvaluable, setParent
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.qpid.server.query.engine.parsing.expression.Expression
andThen
-
-
-
-
Constructor Detail
-
ProjectionExpression
public ProjectionExpression(java.lang.String alias, ExpressionNode<T,R> expression, int ordinal)Constructor stores properties- Parameters:
alias- Item aliasexpression- Item expressionordinal- Ordinal value
-
-
Method Detail
-
apply
public R apply(T object)
Evaluated an object against the expression- Parameters:
object- Object to handle- Returns:
- Evaluation result
-
applyAggregation
public R applyAggregation(SelectExpression<T,R> selectExpression, java.util.List<T> items)
Evaluates a collection of objects against an aggregation expression- Parameters:
selectExpression- Select expressionitems- Collection of objects- Returns:
- Aggregation result
-
getExpression
public Expression<T,R> getExpression()
Returns wrapped expression- Returns:
- Expression instance
-
setAlias
public void setAlias(java.lang.String alias)
Description copied from class:AbstractExpressionNodeSetter for alias- Specified by:
setAliasin interfaceExpressionNode<T,R>- Overrides:
setAliasin classAbstractExpressionNode<T,R>- Parameters:
alias- Expression alias
-
getAlias
public java.lang.String getAlias()
Description copied from class:AbstractExpressionNodeReturns expression alias- Specified by:
getAliasin interfaceExpressionNode<T,R>- Overrides:
getAliasin classAbstractExpressionNode<T,R>- Returns:
- Expression alias
-
isOrdinal
public boolean isOrdinal()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classAbstractExpressionNode<T,R>
-
-