## org.eclipse.datatools.connectivity.oda.spec.result
Class AggregateExpression

    java.lang.Object
      org.eclipse.datatools.connectivity.oda.spec.result.AggregateExpression

Direct Known Subclasses:
  CustomAggregate

    public abstract class AggregateExpression

extends java.lang.Object

The abstract base class for all ODA aggregate expressions.

An expression may be validated by an `IValidator` implemented by an extension of the org.eclipse.datatools.connectivity.oda.dynamicResultSet extension point.

Since:
  3.3 (DTP 1.8)

Method Summary
`AggregateExpression` `add(ExpressionVariable inputSourceVar)` Appends the specified input source variable to this.
`java.lang.String` `getAlias()` Gets the alias of this aggregate expression instance.
`java.lang.String` `getName()` Gets the name of this expression type.
`java.lang.String` `getQualifiedId()` Returns the qualified id of this expression type.
`java.util.List<ExpressionVariable>` `getVariables()` Returns the input source variables.
`boolean` `ignoresDuplicateValues()` Indicates whether this aggregate should ignore duplicate input values of its input source variable(s).
`boolean` `ignoresNullValues()` Indicates whether this aggregate should ignore duplicate null values of its input source variable(s).
`void` `setAlias(java.lang.String alias)` Specifies the alias.
`void` `setIgnoreDuplicateValues(boolean ignoresDups)` Specifies whether this aggregate to ignore duplicate values of its input source variable(s).
`void` `setIgnoreNullValues(boolean ignoresNull)` Specifies whether this aggregate should ignore duplicate null values of its input source variable(s).
`void` `setVariables(java.util.List<ExpressionVariable> variables)` Sets an ordered list of input source variables.
`java.lang.String` `toString()`
`void` `validate()` Validates this expression.
`void` `validate(ValidationContext context)` Validates this expression in the specified context.
`abstract void` `validateSyntax(ValidationContext context)` Performs syntactic validation of this expression in the specified context.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Method Detail

### add

    public AggregateExpression add(ExpressionVariable inputSourceVar)

  Appends the specified input source variable to this.

  Parameters:
    `inputSourceVar` - an `ExpressionVariable` that identifies the source of input values to apply in the aggregate
  Returns:
    this

### getVariables

    public java.util.List<ExpressionVariable> getVariables()

  Returns the input source variables.

  Returns:

### setVariables

    public void setVariables(java.util.List<ExpressionVariable> variables)

  Sets an ordered list of input source variables.

  Parameters:
    `variables` - the list of variables to set; may be an empty list

### getQualifiedId

    public java.lang.String getQualifiedId()

  Returns the qualified id of this expression type.

  Returns:
    qualified id

### getName

    public java.lang.String getName()

  Gets the name of this expression type. It may be used to identify this in user messages or logging.

  Returns:
    name of this expression

### getAlias

    public java.lang.String getAlias()

  Gets the alias of this aggregate expression instance. The alias may be used to reference an instance.

  Returns:
    the alias; may be null

### setAlias

    public void setAlias(java.lang.String alias)

  Specifies the alias.

  Parameters:
    `alias` - the alias to set

### ignoresDuplicateValues

    public boolean ignoresDuplicateValues()

  Indicates whether this aggregate should ignore duplicate input values of its input source variable(s).

  Returns:
    true to ignore; false otherwise

### setIgnoreDuplicateValues

    public void setIgnoreDuplicateValues(boolean ignoresDups)

  Specifies whether this aggregate to ignore duplicate values of its input source variable(s).

  Parameters:
    `ignoresDups` - true to ignore; false otherwise

### ignoresNullValues

    public boolean ignoresNullValues()

  Indicates whether this aggregate should ignore duplicate null values of its input source variable(s).

  Returns:
    true to ignore; false otherwise

### setIgnoreNullValues

    public void setIgnoreNullValues(boolean ignoresNull)

  Specifies whether this aggregate should ignore duplicate null values of its input source variable(s).

  Parameters:
    `ignoresNull` - true to ignore; false otherwise

### validate

    public void validate()
                  throws OdaException

  Validates this expression.

  Throws:
    `OdaException`

### validate

    public void validate(ValidationContext context)
                  throws OdaException

  Validates this expression in the specified context.

  Parameters:
    `context` - context for validation; may be null which would limit the scope of validation
  Throws:
    `OdaException` - if validation failed. The concrete reason is defined by the subclass implementing this method.

### validateSyntax

    public abstract void validateSyntax(ValidationContext context)
                                 throws OdaException

  Performs syntactic validation of this expression in the specified context.

  Parameters:
    `context` - context for validation; may be null which would limit the scope of validation
  Throws:
    `OdaException` - if validation failed. The concrete cause is defined by the subclass implementing this method.

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`