public final class ExpressionStringBuilder
extends java.lang.Object
Expression
instance.
This class provides methods to build an expression using ODI objects that can be part of an expression (i.e. variable, column, etc.), as well as plain string corresponding to statements from a predefined language.
You can use that class in order to:
toString()
method can be used to get
such string.toExpression()
method can be used to get such instance.Expression
Constructor and Description |
---|
ExpressionStringBuilder(com.sunopsis.language.SnpsLanguage pLanguage)
Create a new
ExpressionStringBuilder . |
Modifier and Type | Method and Description |
---|---|
ExpressionStringBuilder |
append(IColumn pColumn,
java.lang.String pDataStoreAlias)
Append the string representation of the given
IColumn to this builder's expression. |
ExpressionStringBuilder |
append(ISourceColumn pSourceColumn)
Append the string representation of the given
ISourceColumn to this builder's
expression. |
ExpressionStringBuilder |
append(OdiSequence pOdiSequence,
boolean pBinding)
Append the string representation of the given
OdiSequence to this builder's
expression. |
ExpressionStringBuilder |
append(OdiSequence pOdiSequence,
boolean pBinding,
boolean pQualified)
Append the string representation of the given
OdiSequence to this builder's
expression. |
ExpressionStringBuilder |
append(OdiUserFunction pOdiUserFunction)
Append the string representation of the given
OdiUserFunction to this builder's
expression. |
ExpressionStringBuilder |
append(OdiUserFunction pOdiUserFunction,
java.util.List pBuilders)
Append the string representation of the given
OdiUserFunction to this builder's
expression and uses the pBuilders as parameters of the function. |
ExpressionStringBuilder |
append(OdiVariable pOdiVariable,
boolean pBinding)
Append the string representation of the given
OdiVariable to this builder's
expression. |
ExpressionStringBuilder |
append(OdiVariable pOdiVariable,
boolean pBinding,
boolean pQualified)
Append the string representation of the given
OdiVariable to this builder's
expression. |
ExpressionStringBuilder |
append(java.lang.String pString)
Append the given string to this builder's expression.
|
com.sunopsis.language.parser.SnpsExpressionTag[] |
getExpressionTags()
Returns the current expression tags of this builder.
|
com.sunopsis.language.SnpsLanguage |
getLanguage()
Returns the language that is used by this builder.
|
Expression |
toExpression()
Conversion method that takes the current state of this builder and
returns it as an
Expression instance. |
java.lang.String |
toString()
Returns the string representation of the expression of this builder.
|
public ExpressionStringBuilder(com.sunopsis.language.SnpsLanguage pLanguage)
ExpressionStringBuilder
.pLanguage
- a language definitionpublic com.sunopsis.language.SnpsLanguage getLanguage()
public com.sunopsis.language.parser.SnpsExpressionTag[] getExpressionTags()
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public Expression toExpression()
Expression
instance.Expression
objectpublic ExpressionStringBuilder append(java.lang.String pString)
pString
- the string to appendpublic ExpressionStringBuilder append(OdiVariable pOdiVariable, boolean pBinding)
OdiVariable
to this builder's
expression.pOdiVariable
- the variable to appendpBinding
- true
if the variable should be resolved during SQL binding,
or false
to resolve it using direct replacementDomainRuntimeException
- if the string representation of the given variable
is illegalpublic ExpressionStringBuilder append(OdiVariable pOdiVariable, boolean pBinding, boolean pQualified)
OdiVariable
to this builder's
expression.pOdiVariable
- the variable to appendpBinding
- true
if the variable should be resolved during SQL binding,
or false
to resolve it using direct replacementpQualified
- if true
the variable is fully qualifiedDomainRuntimeException
- if the string representation of the given variable
is illegalpublic ExpressionStringBuilder append(OdiUserFunction pOdiUserFunction)
OdiUserFunction
to this builder's
expression.pOdiUserFunction
- the user function to appendDomainRuntimeException
- if the string representation of the given user
function is illegalpublic ExpressionStringBuilder append(OdiUserFunction pOdiUserFunction, java.util.List pBuilders)
OdiUserFunction
to this builder's
expression and uses the pBuilders
as parameters of the function. Note that
every parameter is considered as existing (optional parameters are considered as mandatory)
and only one instance is taken for each parameter, even for repeatable ones.pOdiUserFunction
- the user function to appendpBuilders
- the ExpressionStringBuilders to be used as parameters for the functionDomainRuntimeException
- if the string representation of the given user function is illegalpublic ExpressionStringBuilder append(OdiSequence pOdiSequence, boolean pBinding)
OdiSequence
to this builder's
expression.pOdiSequence
- the sequence to appendpBinding
- true
if the sequence should be resolved during SQL binding,
or false
to resolve it using direct replacementDomainRuntimeException
- if the string representation of the given sequence
is illegalpublic ExpressionStringBuilder append(OdiSequence pOdiSequence, boolean pBinding, boolean pQualified)
OdiSequence
to this builder's
expression.pOdiSequence
- the sequence to appendpBinding
- true
if the sequence should be resolved during SQL binding,
or false
to resolve it using direct replacementpQualified
- if true
the sequence will be fully qualifiedDomainRuntimeException
- if the string representation of the given sequence
is illegalpublic ExpressionStringBuilder append(IColumn pColumn, java.lang.String pDataStoreAlias)
IColumn
to this builder's expression.pColumn
- the column to appendpDataStoreAlias
- the alias of the data store to be appended to the column nameDomainRuntimeException
- if the string representation of the given columnDomainRuntimeException
- if pColumn is null.
is illegalpublic ExpressionStringBuilder append(ISourceColumn pSourceColumn)
ISourceColumn
to this builder's
expression.pSourceColumn
- the column to appendDomainRuntimeException
- if the string representation of the given column
is illegal or given column is null
.