See: Description
| Interface | Description |
|---|---|
| SQLMappingColumn | Deprecated
Since 2.3.0, replaced by
FieldMapper. |
| SQLMappingColumnContext | Deprecated
Since 2.3.0, replaced by
FieldMapperContext. |
| SQLMappingColumnDefinition | Deprecated
Since 2.3.0, replaced by
FieldMapperDefinition. |
| Class | Description |
|---|---|
| SQLColumnSpec | Deprecated
Since 2.3.0, replaced by
SQLField. |
| SQLMappingColumnCatalog | Deprecated
Since 2.3.0, replaced by
FieldMapperCatalog. |
| SQLMappingColumnResult | Deprecated
Since 2.3.0, replaced by
FieldMapping. |
| SQLMappingColumnResultList | Deprecated
Since 2.3.0, replaced by
FieldMappingList. |
| SQLMappingTable | Deprecated
Since 2.3.0, replaced by
TableMapping. |
| SQLTableOrViewSpec | Deprecated
Since 2.3.0, replaced by
SQLTable. |
| Enum | Description |
|---|---|
| SQLDataType |
Defines the possible SQL data types.
|
| SQLMappingColumnDefinition.PredefinedSQLMappingColumnDefinition |
Defines all internal
SQLMappingColumnDefinition implementations that are available in {addon.label}. |
Classes and interfaces to define mappings in {addon.label} SQL import and export.
You must define a SQL column mapping definition before adding it to your code SQLMappingColumnCatalog
For example:
public final class SampleSQLMappingColumnDefinition implements SQLMappingColumnDefinition
{
public UserMessage getLabel()
{
return UserMessage.createInfo("Sample SQL mapping column");
}
public UserMessage getDescription()
{
return UserMessage.createInfo("Sample SQL mapping column");
}
public SQLMappingColumn getSQLMappingColumn()
{
return new SampleSQLMappingColumnImplementation();
}
}
Next, create the implementation definition.
The following example shows how to create mappings between the SQL columns and the schema nodes in EBX®:
public final class SampleSQLMappingColumnImplementation implements SQLMappingColumn
{
public SQLMappingColumnResultList execute(SQLMappingColumnContext sqlMappingColumnContext)
{
SQLMappingColumnResultList mappingColumnResultList = new SQLMappingColumnResultList();
// Map the 'column1' column in SQL with the 'field1' schema node in EBX®.
SchemaNode field1 = sqlMappingColumnContext.getSchemaNode(Path.parse("/root/SampleTable/field1"));
SQLColumnSpec column1 = sqlMappingColumnContext.getSQLColumnSpec("column1");
SQLMappingColumnResult mappingColumn1 = new SQLMappingColumnResult(field1, column1);
mappingColumnResultList.add(mappingColumn1);
// Map the 'column2' column in SQL with the 'field2' schema node in EBX®.
SchemaNode field2 = sqlMappingColumnContext.getSchemaNode(Path.parse("/root/SampleTable/field2"));
SQLColumnSpec column2 = sqlMappingColumnContext.getSQLColumnSpec("column2");
SQLMappingColumnResult mappingColumn2 = new SQLMappingColumnResult(field2, column2);
mappingColumnResultList.add(mappingColumn2);
return mappingColumnResultList;
}
}
Finally, register the SQL column mapping definition in the add-on to make it available in the configuration:
SQLMappingColumnCatalog.add(new SampleSQLMappingColumnDefinition());
Some internal SQL column mapping definitions are available in {addon.label}. Please see the enum SQLMappingColumnDefinition.PredefinedSQLMappingColumnDefinition for more details.
The following example shows how to get a SQL column mapping definition with PredefinedSQLMappingColumnDefinition enum.
SQLMappingColumnCatalog.getSQLMappingColumnDefinition(PredefinedSQLMappingColumnDefinition.MAP_NAME_WITH_INSENSITIVE);