## org.eclipse.datatools.connectivity.oda.spec.manifest
Class ExtensionContributor

    java.lang.Object
      org.eclipse.datatools.connectivity.oda.spec.manifest.ExtensionContributor

All Implemented Interfaces:
  org.eclipse.core.runtime.IContributor

    public class ExtensionContributor

extends java.lang.Object
implements org.eclipse.core.runtime.IContributor

Represents the contributor defining its scope and capabilities, as specifed in an extension of the org.eclipse.datatools.connectivity.oda.dynamicResultSet extension point.

Since:
  3.2 (DTP 1.7)

Field Summary
`static java.lang.String` `ATTR_NESTED_VALUEEXPR_SUPPORT`
`static java.lang.String` `ATTR_NULL_ORDERING_SUPPORT`
`static java.lang.String` `ATTR_ODA_FILTER_EXPR_NAME`
`static java.lang.String` `ATTR_SPEC_FACTORY_CLASS`
`static java.lang.String` `ATTR_VALIDATOR_CLASS`
`static java.lang.String` `ELEMENT_NAME`
`static java.lang.String` `SUB_ELEMENT_FILTER_EXPRESSION_TYPE`
`static java.lang.String` `SUB_ELEMENT_ROW_ORDERING_SUPPORT`

Constructor Summary
`ExtensionContributor(org.eclipse.core.runtime.IConfigurationElement contributorElement)`

Method Summary
`boolean` `equals(java.lang.Object obj)`
`java.lang.String` `getDeclaringExtensionId()` Gets the unique extension id that declares this dynamicResultSet contributor.
`java.lang.String` `getName()`
`QuerySpecificationFactory` `getSpecificationFactory()`
`SupportedDataSetType[]` `getSupportedDataSetTypes()` Gets a collection of data set types supported by this contributor.
`java.lang.String[]` `getSupportedOdaFilterExpressions()` Gets a collection of the ODA defined filter expression names supported by this contributor.
`IValidator` `getValidator()` Gets the `IValidator` instance of this contributor.
`int` `hashCode()`
`static java.util.List<SupportedDataSetType>` `processDataSetTypeElements(org.eclipse.core.runtime.IConfigurationElement contributorElement)` An utility method to process the specified contributor configuration element and returns a list of its supported data set types.
`boolean` `supportsCombinedValueExpressionType()` Indicates whether this extension supports handling of combined value expression type.
`boolean` `supportsDataSetType(java.lang.String odaDataSourceId, java.lang.String odaDataSetId)` Indicates whether this supports the specified data set type defined within the specified data source type.
`boolean` `supportsDataSetType(SupportedDataSetType dataSetType)` Indicates whether this supports the specified data set type.
`boolean` `supportsDynamicRowOrdering()` Indicates whether this contributor supports dynamic row ordering of its result sets for all its supported data set types.
`boolean` `supportsFunctionValueExpressionType()` Indicates whether this extension supports handling of function value expression type.
`boolean` `supportsNestedValueExpressionType()` Indicates whether this extension supports handling of nested value expression type.
`boolean` `supportsNullValueOrdering()` Indicates whether this contributor's support of dynamic row ordering includes control over the ordering of null vs.
`boolean` `supportsOdaCombinedOperator(java.lang.String builtInOperatorId)` Indicates whether this supports the specified ODA built-in combined operator type.
`boolean` `supportsOdaFilterExpression(java.lang.String odaExprName)` Indicates whether this supports the specified ODA defined filter expression.

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

Field Detail

### ELEMENT_NAME

    public static final java.lang.String ELEMENT_NAME

See Also:
  Constant Field Values

### SUB_ELEMENT_FILTER_EXPRESSION_TYPE

    public static final java.lang.String SUB_ELEMENT_FILTER_EXPRESSION_TYPE

See Also:
  Constant Field Values

### ATTR_ODA_FILTER_EXPR_NAME

    public static final java.lang.String ATTR_ODA_FILTER_EXPR_NAME

See Also:
  Constant Field Values

### ATTR_VALIDATOR_CLASS

    public static final java.lang.String ATTR_VALIDATOR_CLASS

See Also:
  Constant Field Values

### ATTR_SPEC_FACTORY_CLASS

    public static final java.lang.String ATTR_SPEC_FACTORY_CLASS

See Also:
  Constant Field Values

### SUB_ELEMENT_ROW_ORDERING_SUPPORT

    public static final java.lang.String SUB_ELEMENT_ROW_ORDERING_SUPPORT

See Also:
  Constant Field Values

### ATTR_NULL_ORDERING_SUPPORT

    public static final java.lang.String ATTR_NULL_ORDERING_SUPPORT

See Also:
  Constant Field Values

### ATTR_NESTED_VALUEEXPR_SUPPORT

    public static final java.lang.String ATTR_NESTED_VALUEEXPR_SUPPORT

See Also:
  Constant Field Values

Constructor Detail

### ExtensionContributor

    public ExtensionContributor(org.eclipse.core.runtime.IConfigurationElement contributorElement)
                         throws OdaException

Throws:
  `OdaException`

Method Detail

### processDataSetTypeElements

    public static java.util.List<SupportedDataSetType> processDataSetTypeElements(org.eclipse.core.runtime.IConfigurationElement contributorElement)
                                                                           throws OdaException

  An utility method to process the specified contributor configuration element and returns a list of its supported data set types.

  Parameters:
    `contributorElement` - contributor configuration element
  Returns:
    a list of `SupportedDataSetType` declared as supported in the contributor element
  Throws:
    `OdaException` - if specified element has invalid configuration content

### getDeclaringExtensionId

    public java.lang.String getDeclaringExtensionId()

  Gets the unique extension id that declares this dynamicResultSet contributor.

  Returns:
    unique extension id of this contributor

### getName

    public java.lang.String getName()

  Specified by:
    `getName` in interface `org.eclipse.core.runtime.IContributor`

### supportsDataSetType

    public boolean supportsDataSetType(java.lang.String odaDataSourceId,
                                       java.lang.String odaDataSetId)

  Indicates whether this supports the specified data set type defined within the specified data source type.

  Parameters:
    `odaDataSourceId` - id of an ODA data source extension
    `odaDataSetId` - id of an ODA data set defined within the data source extension
  Returns:
    true if this contributes support of the specified ODA data set type; false otherwise

### supportsDataSetType

    public boolean supportsDataSetType(SupportedDataSetType dataSetType)

  Indicates whether this supports the specified data set type.

  Parameters:
    `dataSetType` - an instance of `SupportedDataSetType`
  Returns:
    true if this contributes support of the specified ODA data set type; false otherwise

### getSupportedDataSetTypes

    public SupportedDataSetType[] getSupportedDataSetTypes()

  Gets a collection of data set types supported by this contributor.

  Returns:
    an array of `SupportedDataSetType`

### supportsOdaFilterExpression

    public boolean supportsOdaFilterExpression(java.lang.String odaExprName)

  Indicates whether this supports the specified ODA defined filter expression.

  Parameters:
    `odaExprName` - simple name of an ODA defined filter expression
  Returns:
    true if the specified filter expression is supported; false otherwise

### getSupportedOdaFilterExpressions

    public java.lang.String[] getSupportedOdaFilterExpressions()

  Gets a collection of the ODA defined filter expression names supported by this contributor.

  Returns:
    an array of the simple names of supported ODA defined filter expressions

### supportsDynamicRowOrdering

    public boolean supportsDynamicRowOrdering()

  Indicates whether this contributor supports dynamic row ordering of its result sets for all its supported data set types.

  Returns:
    true if dynamic row ordering is supported; false otherwise

### supportsNullValueOrdering

    public boolean supportsNullValueOrdering()

  Indicates whether this contributor's support of dynamic row ordering includes control over the ordering of null vs. non-null values in the row order.

  Returns:
    true if dynamic null value ordering is supported; false otherwise

### supportsOdaCombinedOperator

    public boolean supportsOdaCombinedOperator(java.lang.String builtInOperatorId)

  Indicates whether this supports the specified ODA built-in combined operator type.

  Parameters:
    `builtInOperatorId` - the id of a built-in value expression combined operator type; the constants are defined in `CombinedValueExpressionOperator`
  Returns:
    true if the specified built-in combined operator type is supported; false otherwise
  Since:
    3.2.2 (DTP 1.7.2)
  See Also:
    `org.eclipse.datatools.connectivity.oda.spec.util.ExpressionFactory#getCombinedOperator(String, String)}`

### supportsCombinedValueExpressionType

    public boolean supportsCombinedValueExpressionType()

  Indicates whether this extension supports handling of combined value expression type.

  Returns:
    true if supported; false otherwise
  Since:
    3.2.2 (DTP 1.7.2)

### supportsNestedValueExpressionType

    public boolean supportsNestedValueExpressionType()

  Indicates whether this extension supports handling of nested value expression type.

  Returns:
    true if supported; false otherwise
  Since:
    3.2.2 (DTP 1.7.2)

### supportsFunctionValueExpressionType

    public boolean supportsFunctionValueExpressionType()

  Indicates whether this extension supports handling of function value expression type.

  Returns:
    true if supported; false otherwise
  Since:
    3.2.2 (DTP 1.7.2)

### getValidator

    public IValidator getValidator()
                            throws OdaException

  Gets the `IValidator` instance of this contributor.

  Returns:
    validator instance; or null if none is specified in the dynamicResultSet extension
  Throws:
    `OdaException` - if exception occurs in instantiating the validator class

### getSpecificationFactory

    public QuerySpecificationFactory getSpecificationFactory()
                                                      throws OdaException

  Returns:
  Throws:
    `OdaException`

### hashCode

    public int hashCode()

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

### equals

    public boolean equals(java.lang.Object obj)

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