org.eclipse.persistence.expressions
Class ListExpressionOperator

java.lang.Object
  extended by org.eclipse.persistence.expressions.ExpressionOperator
      extended by org.eclipse.persistence.expressions.ListExpressionOperator
All Implemented Interfaces:
Serializable

public class ListExpressionOperator
extends ExpressionOperator

INTERNAL: A ListExpressionOperator is used with an ArgumentListFunctionExpression. It is capable of expanding the number of arguments it can be an operator for. It is built from a set of start strings, a repeating set of separators and a set of termination strings It typically represents a database function that has a variable list of arguments e.g. COALESCE(arg1, arg2, arg3, .... argn) In the example above "COALESCE(" is the start string, "," is the separator and ")" is the end string

Author:
tware
See Also:
ArgumentListFunctionExpression, Expression.coalesece(), Serialized Form

Field Summary
 
Fields inherited from class org.eclipse.persistence.expressions.ExpressionOperator
Abs, Acos, Add, AddDate, AddMonths, AggregateOperator, All, And, Any, Ascending, Ascii, Asin, Atan, Atan2, Average, Between, Case, Ceil, CharIndex, CharLength, Chr, Coalesce, ComparisonOperator, Concat, Cos, Cosh, Cot, Count, CurrentDate, CurrentTime, DateDifference, DateName, DatePart, DateToString, Decode, Deref, Descending, Difference, Distinct, Divide, Equal, EqualOuterJoin, Exists, ExistsNode, Exp, Extract, ExtractValue, Floor, FunctionOperator, GetNumberVal, GetStringVal, GreaterThan, GreaterThanEqual, Greatest, HexToRaw, In, Initcap, Instring, InSubQuery, IsFragment, IsNull, LastDay, Least, LeftPad, LeftTrim, LeftTrim2, Length, LessThan, LessThanEqual, Like, LikeEscape, Ln, Locate, Locate2, Log, LogicalOperator, Maximum, Minimum, Mod, MonthsBetween, Multiply, Negate, NewTime, NextDay, Not, NotBetween, NotEqual, NotExists, NotIn, NotInSubQuery, NotLike, NotLikeEscape, NotNull, NullIf, Nvl, Or, OrderOperator, Power, Ref, RefToHex, Replace, Replicate, Reverse, Right, RightPad, RightTrim, RightTrim2, Round, RoundDate, SDO_FILTER, SDO_NN, SDO_RELATE, SDO_WITHIN_DISTANCE, Sign, Sin, Sinh, Some, Soundex, Sqrt, StandardDeviation, Substring, SubstringSingleArg, Subtract, Sum, Tan, Tanh, ToChar, ToCharWithFormat, ToDate, Today, ToLowerCase, ToNumber, ToUpperCase, Translate, Trim, Trim2, Trunc, TruncateDate, Value, Variance
 
Constructor Summary
ListExpressionOperator()
           
 
Method Summary
 void copyTo(ExpressionOperator operator)
           
 String[] getDatabaseStrings()
          INTERNAL: Recalculate the database strings each time this is called in case one has been added.
 int getNumberOfItems()
           
 String[] getSeparators()
           
 String[] getStartStrings()
           
 String[] getTerminationStrings()
           
 void incrementNumberOfItems()
           
 boolean isComplete()
          INTERNAL: If we have all the required information, this operator is complete and can be used as is.
 void setNumberOfItems(int numberOfItems)
           
 void setSeparator(String separator)
           
 void setSeparators(String[] separators)
           
 void setStartString(String startString)
           
 void setStartStrings(String[] startStrings)
           
 void setTerminationString(String terminationString)
           
 void setTerminationStrings(String[] terminationStrings)
           
 
Methods inherited from class org.eclipse.persistence.expressions.ExpressionOperator
abs, acos, addDate, addMonths, addOperator, all, and, any, applyFunction, ascending, ascii, asin, atan, average, bePostfix, bePrefix, beRepeating, between, caseStatement, ceil, charIndex, charLength, chr, coalesce, concat, conformBetween, conformLike, cos, cosh, cot, count, currentDate, currentTime, currentTimeStamp, dateDifference, dateName, datePart, dateToString, decode, deref, descending, difference, distinct, doesRelationConform, equalOuterJoin, equals, exists, existsNode, exp, expressionFor, expressionFor, expressionForArguments, expressionForWithBaseLast, extract, extractValue, floor, getAllOperators, getJavaStrings, getNodeClass, getNumberVal, getOperator, getPlatformOperatorName, getPlatformOperatorNames, getSelector, getStringVal, getType, greatest, hashCode, hexToRaw, ifNull, in, initcap, initializeOperators, initializePlatformOperatorNames, instring, inSubQuery, isAggregateOperator, isAll, isAny, isAnyOrAll, isBindingSupported, isComparisonOperator, isFragment, isFunctionOperator, isLogicalOperator, isNull, isOrderOperator, isPrefix, lastDay, least, leftPad, leftTrim, leftTrim2, length, like, likeEscape, ln, locate, locate2, log, maximum, minimum, mod, monthsBetween, negate, newExpressionForArgument, newExpressionForArguments, newExpressionForArgumentWithBaseLast, newTime, nextDay, notExists, notIn, notInSubQuery, notLike, notLikeEscape, notNull, notOperator, nullIf, or, oracleDateName, power, printCollection, printDuo, printJavaCollection, printJavaDuo, printsAs, printsAs, printsJavaAs, printsJavaAs, ref, refToHex, replace, replicate, resetOperators, reverse, right, rightPad, rightTrim, rightTrim2, round, roundDate, setArgumentIndices, setIsBindingSupported, setNodeClass, setSelector, setType, sign, simpleAggregate, simpleFunction, simpleFunction, simpleFunctionNoParentheses, simpleLogical, simpleLogicalNoParens, simpleMath, simpleOrdering, simpleRelation, simpleRelation, simpleThreeArgumentFunction, simpleTwoArgumentFunction, sin, sinh, some, soundex, sqrt, standardDeviation, substring, substringSingleArg, sum, sybaseAddMonthsOperator, sybaseAtan2Operator, sybaseInStringOperator, sybaseLocateOperator, sybaseToCharOperator, sybaseToCharWithFormatOperator, sybaseToDateOperator, sybaseToDateToStringOperator, sybaseToNumberOperator, tan, tanh, toChar, toCharWithFormat, toDate, today, toLowerCase, toNumber, toString, toUpperCase, translate, trim, trim2, trunc, truncateDate, value, variance
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ListExpressionOperator

public ListExpressionOperator()
Method Detail

copyTo

public void copyTo(ExpressionOperator operator)
Overrides:
copyTo in class ExpressionOperator

getDatabaseStrings

public String[] getDatabaseStrings()
INTERNAL: Recalculate the database strings each time this is called in case one has been added.

Overrides:
getDatabaseStrings in class ExpressionOperator

getNumberOfItems

public int getNumberOfItems()

setNumberOfItems

public void setNumberOfItems(int numberOfItems)

getStartStrings

public String[] getStartStrings()

setStartString

public void setStartString(String startString)

setStartStrings

public void setStartStrings(String[] startStrings)

getSeparators

public String[] getSeparators()

setSeparator

public void setSeparator(String separator)

setSeparators

public void setSeparators(String[] separators)

getTerminationStrings

public String[] getTerminationStrings()

setTerminationString

public void setTerminationString(String terminationString)

setTerminationStrings

public void setTerminationStrings(String[] terminationStrings)

incrementNumberOfItems

public void incrementNumberOfItems()

isComplete

public boolean isComplete()
Description copied from class: ExpressionOperator
INTERNAL: If we have all the required information, this operator is complete and can be used as is. Otherwise we will need to look up a platform- specific operator.

Overrides:
isComplete in class ExpressionOperator