org.eclipse.datatools.connectivity.oda.spec.manifest
Class FunctionExpressionDefinition

java.lang.Object
  extended by org.eclipse.datatools.connectivity.oda.spec.manifest.FunctionExpressionDefinition

public class FunctionExpressionDefinition
extends java.lang.Object

Represents the definition of a value expression function type, as specified in an extension of the org.eclipse.datatools.connectivity.oda.dynamicResultSet extension point.

Since:
3.2.2 (DTP 1.7.2)

Field Summary
static java.lang.String ATTR_CAN_IGNORE_DUPLS
           
static java.lang.String ATTR_CLASS
           
static java.lang.String ATTR_DESC
           
static java.lang.String ATTR_DISPLAY_NAME
           
static java.lang.String ATTR_ID
           
static java.lang.String ATTR_MAX_ARGS
           
static java.lang.String ATTR_MIN_ARGS
           
static java.lang.String ATTR_NAME
           
static java.lang.String ELEMENT_NAME
           
 
Method Summary
 boolean canIgnoreDuplicateValues()
          Indicates whether this function type is capable of ignoring duplicate values of its input variable.
 CustomFunction createExpression()
          Creates and returns an instance of CustomFunction based on the class attribute specified in this definition.
 ExtensionContributor getContributor()
          Returns the contributor of this type of custom function expression.
 java.lang.String getDeclaringExtensionId()
          Gets the unique id of the dynamicResultSets extension that declares this type of custom function type.
 java.lang.String getDescription()
          Gets the brief translateable description, if any.
 java.lang.String getDisplayName()
          Gets the translatable name that will be used to refer to this particular function expression type in dialogs presented to the user.
 java.lang.String getId()
          Gets the id that uniquely identifies this type of custom function type within the contributing extension.
static java.lang.String getIdAttributeValue(org.eclipse.core.runtime.IConfigurationElement exprElement)
          For internal use only.
 java.lang.Integer getMaxArguments()
          Gets the maximum number of argument values required by this expression type.
 java.lang.Integer getMinArguments()
          Gets the minimum number of argument values required by this expression type.
 java.lang.String getName()
          Gets the expression name of this function type.
 IValidator getValidator()
          Gets the concrete class that implements the IValidator to validate this expression.
 VariableRestrictions getVariableRestrictions()
          Gets the restriction info on the types of expression variable that can be applied with this type of function value expression.
 boolean supportsDataSetType(java.lang.String odaDataSourceId, java.lang.String odaDataSetId)
          Indicates whether this type of custom function type supports the specified data set type of the specified data source type.
 boolean supportsUnboundedMaxArguments()
          Indicates whether this expression type has no upper limit on the number of argument values.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ELEMENT_NAME

public static final java.lang.String ELEMENT_NAME
See Also:
Constant Field Values

ATTR_ID

public static final java.lang.String ATTR_ID
See Also:
Constant Field Values

ATTR_NAME

public static final java.lang.String ATTR_NAME
See Also:
Constant Field Values

ATTR_DISPLAY_NAME

public static final java.lang.String ATTR_DISPLAY_NAME
See Also:
Constant Field Values

ATTR_DESC

public static final java.lang.String ATTR_DESC
See Also:
Constant Field Values

ATTR_CLASS

public static final java.lang.String ATTR_CLASS
See Also:
Constant Field Values

ATTR_MIN_ARGS

public static final java.lang.String ATTR_MIN_ARGS
See Also:
Constant Field Values

ATTR_MAX_ARGS

public static final java.lang.String ATTR_MAX_ARGS
See Also:
Constant Field Values

ATTR_CAN_IGNORE_DUPLS

public static final java.lang.String ATTR_CAN_IGNORE_DUPLS
See Also:
Constant Field Values
Method Detail

getIdAttributeValue

public static java.lang.String getIdAttributeValue(org.eclipse.core.runtime.IConfigurationElement exprElement)
                                            throws OdaException
For internal use only.

Throws:
OdaException

createExpression

public CustomFunction createExpression()
                                throws OdaException
Creates and returns an instance of CustomFunction based on the class attribute specified in this definition.

Returns:
an instance of CustomFunction or its subclass, with no assigned function arguments
Throws:
OdaException

supportsDataSetType

public boolean supportsDataSetType(java.lang.String odaDataSourceId,
                                   java.lang.String odaDataSetId)
Indicates whether this type of custom function type supports the specified data set type of 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 ODA data set type can be used with this type of custom function type; false otherwise

getDeclaringExtensionId

public java.lang.String getDeclaringExtensionId()
Gets the unique id of the dynamicResultSets extension that declares this type of custom function type.

Returns:
unique id of the declaring dynamicResultSets extension

getId

public java.lang.String getId()
Gets the id that uniquely identifies this type of custom function type within the contributing extension.

Returns:
id of this type of custom function type

getName

public java.lang.String getName()
Gets the expression name of this function type. Default to the function id if no name is specified.

Returns:
the name of this type of custom function type

getDisplayName

public java.lang.String getDisplayName()
Gets the translatable name that will be used to refer to this particular function expression type in dialogs presented to the user. Default to the function name if no display name is specified.

Returns:
the display name of this type of custom function type

getDescription

public java.lang.String getDescription()
Gets the brief translateable description, if any.

Returns:
description text, or null if none

getContributor

public ExtensionContributor getContributor()
Returns the contributor of this type of custom function expression.

Returns:
an instance of the ExtensionContributor that defines its scope and capabilities

getValidator

public IValidator getValidator()
                        throws OdaException
Gets the concrete class that implements the IValidator to validate this expression.

Returns:
an instance of the contributor's validator, or null if none is specified
Throws:
OdaException - if exception occurs in instantiating its defined validator class

getMinArguments

public java.lang.Integer getMinArguments()
Gets the minimum number of argument values required by this expression type. The value may be greater than or equal to 0.

Returns:
an Integer for the minimum number of expected argument values

supportsUnboundedMaxArguments

public boolean supportsUnboundedMaxArguments()
Indicates whether this expression type has no upper limit on the number of argument values.

Returns:
true if no upper limit on number of argument values; false otherwise

getMaxArguments

public java.lang.Integer getMaxArguments()
Gets the maximum number of argument values required by this expression type.

Returns:
an Integer for the maximum number of expected argument values, or null if no upper limit on the maximum arguments.
See Also:
#supportsUnboundedMaxArguments()}

canIgnoreDuplicateValues

public boolean canIgnoreDuplicateValues()
Indicates whether this function type is capable of ignoring duplicate values of its input variable. Default value is false if none is specified in the extension.

Returns:
true if this function type is capable of ignoring duplicate values of its target variable; false otherwise

getVariableRestrictions

public VariableRestrictions getVariableRestrictions()
Gets the restriction info on the types of expression variable that can be applied with this type of function value expression.

Returns:
an instance of VariableRestrictions