# External Table Data Editors

###### Identifier:

org.eclipse.datatools.sqltools.data.ui.externalTableDataEditor

###### Since:

[Enter the first release in which this extension point appears.]

###### Description:

The externalTableDataEditor allows to contribute an IExternalTableDataEditor object to be used with a particular vendor, version and datatype and length. The contributed object is then used to edit the currently selected cell of the table editor, allowing to implement support for database-specific data types.

###### Configuration Markup:

<!ELEMENT extension (externalEditor)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED

>

<!ELEMENT externalEditor EMPTY>

<!ATTLIST externalEditor

vendor CDATA #IMPLIED

version CDATA #IMPLIED

dataType CDATA #IMPLIED

length CDATA #IMPLIED

class CDATA #REQUIRED

>

This element specifies an IExternalTableDataEditor to be used with a combination of vendor/version/data type/length. If several contributions match a given column, the best fitting contribution is used (i.e. the one that specifies the highest number of criteria).

- vendor - Vendor: String as returned by org.eclipse.wst.rdb.internal.models.sql.schema.Database.getVendor(). Ommit to match all vendors.
- version - Version: String as returned by org.eclipse.wst.rdb.internal.models.sql.schema.Database.getVersion(). Ommit to match all versions.
- dataType - Data Type name: String as returned by org.eclipse.wst.rdb.internal.models.sql.datatypes.DataType.getName(). Ommit to match all data types.
- length - Data Type length: int as returned by that org.eclipse.wst.rdb.internal.models.sql.datatypes.PredefinedDataType that provide a getLength() method (currently i.e. DataLinkDataType, BinaryStringDataType, CharacterStringDataType). The external Editor is invoked for columns whose length attribute is greater or equal to the specified length. Ommit to match all data type lengths.
- class - Class name: Fully qualified name of the Class that is instantiated for the external table data editing. The class must implement the org.eclipse.wst.rdb.data.internal.ui.editor.IExternalTableDataEditor interface and provide a zero-argument Constructor to allow instantiation.

###### Examples:

The default implementation in this plugin calls DefaultExternalTableDataWizard (implementing IExternalTableDataEditor) for any column of a datatype (that supports a length attribute) whose length >= 30 This example would invoke the CloudscapeV10ExternalTableDataEditor for columns of the datatype TIME on a Cloudscape database version 10.0. This example invokes the CloudscapeExternalTableDataEditor for columns of the datatype TIME on any Cloudscape database. If the example above is also defined, this one would be called for any Cloudscape version other than 10.0 as for that one the example above would be called.

###### API Information:

[Enter API information here.]

###### Supplied Implementation:

[Enter information about supplied implementation of this extension point.]