Class ListExpressionOperator
- java.lang.Object
-
- org.eclipse.persistence.expressions.ExpressionOperator
-
- 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- See Also:
ArgumentListFunctionExpression
,Expression.coalesce()
, Serialized Form- Author:
- tware
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
changed
protected boolean
isComplete
protected int
numberOfItems
Deprecated.protected String[]
separators
protected String[]
startStrings
protected String[]
terminationStrings
-
Fields inherited from class org.eclipse.persistence.expressions.ExpressionOperator
Abs, Acos, Add, AddDate, AddMonths, AggregateOperator, All, allInternalOperators, allOperators, And, Any, argumentIndices, As, Ascending, Ascii, Asin, Atan, Atan2, Average, Between, Case, CaseCondition, Cast, 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, Except, ExceptAll, Exists, ExistsNode, Exp, Extract, ExtractValue, ExtractXml, Floor, FunctionOperator, GetNumberVal, GetStringVal, GreaterThan, GreaterThanEqual, Greatest, HexToRaw, In, Initcap, Instring, InSubQuery, Intersect, IntersectAll, isBindingSupported, IsFragment, IsNull, isPrefix, isRepeating, javaStrings, LastDay, Least, LeftPad, LeftTrim, LeftTrim2, Length, LessThan, LessThanEqual, Like, LikeEscape, Ln, Locate, Locate2, Log, LogicalOperator, Maximum, Minimum, Mod, MonthsBetween, Multiply, name, Negate, NewTime, NextDay, nodeClass, Not, NotBetween, NotEqual, NotExists, NotIn, NotInSubQuery, NotLike, NotLikeEscape, NotNull, NullIf, NullsFirst, NullsLast, Nvl, Or, OrderOperator, platformOperatorNames, platformOperatorSelectors, Power, Ref, RefToHex, Regexp, Replace, Replicate, Reverse, Right, RightPad, RightTrim, RightTrim2, Round, RoundDate, SDO_FILTER, SDO_NN, SDO_RELATE, SDO_WITHIN_DISTANCE, selector, 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, type, Union, UnionAll, Value, Variance
-
-
Constructor Summary
Constructors Constructor Description ListExpressionOperator()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description ExpressionOperator
clone()
void
copyTo(ExpressionOperator operator)
Copies this into argument ExpressionOperatorString[]
getDatabaseStrings()
Deprecated.String[]
getDatabaseStrings(int arguments)
Returns an array of Strings that expects a query argument between each String in the array to form the Expression.int
getNumberOfItems()
Deprecated.String[]
getSeparators()
String[]
getStartStrings()
String[]
getTerminationStrings()
void
incrementNumberOfItems()
Deprecated.boolean
isComplete()
INTERNAL: If we have all the required information, this operator is complete and can be used as is.void
setIsComplete(boolean isComplete)
void
setNumberOfItems(int numberOfItems)
Deprecated.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, add, addDate, addMonths, addOperator, all, and, any, applyFunction, as, ascending, ascii, asin, atan, average, bePostfix, bePrefix, beRepeating, between, caseConditionStatement, caseStatement, cast, ceil, charIndex, charLength, chr, coalesce, concat, conformBetween, conformLike, cos, cosh, cot, count, createNode, currentDate, currentTime, currentTimeStamp, dateDifference, dateName, datePart, dateToString, decode, deref, descending, difference, distinct, divide, doesRelationConform, equal, equalOuterJoin, equals, except, exceptAll, exists, existsNode, exp, expressionFor, expressionFor, expressionForArguments, expressionForWithBaseLast, extract, extractValue, extractXml, floor, getAllInternalOperators, getAllOperators, getInternalOperator, getJavaStrings, getName, getNodeClass, getNumberVal, getOperator, getPlatformOperatorName, getPlatformOperatorNames, getPlatformOperatorSelectors, getSelector, getStringVal, getType, greaterThan, greaterThanEqual, greatest, hashCode, hexToRaw, ifNull, in, initcap, initializeAggregateFunctionOperators, initializeComparisonOperators, initializeFunctionOperators, initializeLogicalOperators, initializeOperators, initializeOrderOperators, initializePlatformOperatorNames, initializePlatformOperatorSelectors, initializeRelationOperators, instring, inSubQuery, intersect, intersectAll, isAggregateOperator, isAll, isAny, isAnyOrAll, isBindingSupported, isComparisonOperator, isFragment, isFunctionOperator, isLogicalOperator, isNull, isOrderOperator, isPrefix, lastDay, least, leftPad, leftTrim, leftTrim2, length, lessThan, lessThanEqual, like, likeEscape, ln, locate, locate2, log, maximum, minimum, mod, monthsBetween, multiply, negate, newExpressionForArgument, newExpressionForArguments, newExpressionForArgumentWithBaseLast, newTime, nextDay, notBetween, notEqual, notExists, notIn, notInSubQuery, notLike, notLikeEscape, notNull, notOperator, nullIf, nullsFirst, nullsLast, or, oracleDateName, power, printCollection, printDuo, printJavaCollection, printJavaDuo, printsAs, printsAs, printsJavaAs, printsJavaAs, ref, refToHex, regexp, registerOperator, replace, replicate, resetOperators, reverse, right, rightPad, rightTrim, rightTrim2, round, roundDate, setArgumentIndices, setIsBindingSupported, setName, setNodeClass, setSelector, setType, sign, simpleAggregate, simpleFunction, simpleFunction, simpleFunctionNoParentheses, simpleLogical, simpleLogicalNoParens, simpleMath, simpleOrdering, simpleRelation, simpleRelation, simpleThreeArgumentFunction, simpleTwoArgumentFunction, sin, sinh, some, soundex, sqrt, standardDeviation, substring, substringSingleArg, subtract, sum, sybaseAddMonthsOperator, sybaseAtan2Operator, sybaseInStringOperator, sybaseLocate2Operator, sybaseLocateOperator, sybaseToCharOperator, sybaseToCharWithFormatOperator, sybaseToDateOperator, sybaseToDateToStringOperator, sybaseToNumberOperator, tan, tanh, toChar, toCharWithFormat, toDate, today, toLowerCase, toNumber, toString, toUpperCase, translate, trim, trim2, trunc, truncateDate, union, unionAll, value, variance
-
-
-
-
Field Detail
-
startStrings
protected String[] startStrings
-
separators
protected String[] separators
-
terminationStrings
protected String[] terminationStrings
-
numberOfItems
@Deprecated protected int numberOfItems
Deprecated.
-
changed
protected boolean changed
-
isComplete
protected boolean isComplete
-
-
Method Detail
-
clone
public ExpressionOperator clone()
- Overrides:
clone
in classExpressionOperator
-
copyTo
public void copyTo(ExpressionOperator operator)
Copies this into argument ExpressionOperator- Overrides:
copyTo
in classExpressionOperator
-
getDatabaseStrings
@Deprecated public String[] getDatabaseStrings()
Deprecated.INTERNAL: Recalculate the database strings each time this is called in case one has been added.- Overrides:
getDatabaseStrings
in classExpressionOperator
-
getDatabaseStrings
public String[] getDatabaseStrings(int arguments)
Returns an array of Strings that expects a query argument between each String in the array to form the Expression. The array is built from the defined startStrings, separators, and terminationStrings. Start strings and termination strings take precedence over separator strings. The first defined start string will be added to the array. All subsequent start strings are optional, meaning they will only be added to the array if there are argument spaces available. The defined set of separator strings will be repeated, as a complete set, as long as there are argument spaces available. The last defined termination string will be added to the array. All antecedent termination strings are optional, meaning they will only be added to the array if there are argument spaces available.- Overrides:
getDatabaseStrings
in classExpressionOperator
-
getNumberOfItems
@Deprecated public int getNumberOfItems()
Deprecated.
-
setNumberOfItems
@Deprecated public void setNumberOfItems(int numberOfItems)
Deprecated.
-
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
@Deprecated public void incrementNumberOfItems()
Deprecated.
-
setIsComplete
public void setIsComplete(boolean isComplete)
-
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 classExpressionOperator
-
-