See: Description
Interface | Description |
---|---|
DataIntegrationExecutionResults |
Contains all results of a data integration execution.
|
TableMappingResult |
Result for a
TableMapping after performing a data integration execution. |
Class | Description |
---|---|
DataFormatOptions |
Global options for formatting and parsing various data types.
|
DataIntegrationExecutor |
Executes a data integration task.
|
DataIntegrationSpec |
Global specification for a data integration task.
|
Exception | Description |
---|---|
DataIntegrationException |
Represents an error with user-friendly message happened during a data integration task.
|
Provides classes and interfaces to execute a data integration task.
The main class of this package is DataIntegrationExecutor
, which performs a data integration task between a SourceTable
and a TargetTable
.
TableMapping
to map source and target fields.
FieldMatcher
. To determine which field in the source table will match with which field in the target table, you have to define in TableMapping
.
DataIntegrationExecutionResults
.
Create an instance of EBXSourceTable
:
EBXSourceTableSpec ebxSourceTableSpec = EBXSourceTableSpec .newBuilder(adaptationTable, session) .setIncludeComputedValuesOption(false) .build(); EBXSourceTable ebxSourceTable = EBXSourceTable.newInstance(ebxSourceTableSpec);
Create an instance of CSVTargetTable
:
CSVTargetTableSpec csvTargetTableSpec = CSVTargetTableSpec.newBuilder(outputFile) .setFirstRowHeader(true) .setFieldLabels(ebxSourceTable.getLabels()) .build(); CSVTargetTable csvTargetTable = CSVTargetTable.newInstance(csvTargetTableSpec);
Create an instance of TableMapping
with FieldMatcher
:
TableMapping<EBXField, CSVField> tableMapping = TableMapping.of(ebxSourceTable, csvTargetTable); List<EBXField> ebxFields = ebxSourceTable.getTable().getFields(); List<CSVField> csvFields = csvTargetTable.getTable().getFields(); tableMapping.mapFieldsWithMatcher(ebxFields, csvFields, FieldMatcher.getMatcherByLabelIgnoreCase());
Create an instance of DataIntegrationSpec
:
MappingSpec mappingSpec = MappingSpec.of(tableMapping); DataIntegrationSpec dataIntegrationSpec = new DataIntegrationSpec(session, mappingSpec);
Execute the DataIntegrationSpec
and get results:
DataIntegrationExecutionResults exportResults = DataIntegrationExecutor.getInstance().execute(dataIntegrationSpec);
Create an instance of ExcelSourceTable
:
ExcelSourceTableSpec excelSourceTableSpec = ExcelSourceTableSpec .newBuilder(fileToImport) .setFirstRowHeader(true) .setSheetName("Employee") .build(); ExcelSourceTable excelSourceTable = ExcelSourceTable.newInstance(excelSourceTableSpec);
Create an instance of EBXTargetTable
:
EBXTargetTableSpec targetTableSpec = EBXTargetTableSpec .newBuilder(adaptationTable, session) .setWriteMode(EBXWriteMode.UPDATE_OR_INSERT) .setNullOrEmptyPrimaryKeyAllowed(false) .build(); EBXTargetTable ebxTargetTable = EBXTargetTable.newInstance(targetTableSpec);
Create an instance of TableMapping
with mapping manually :
TableMapping<ExcelField, EBXField> tableMapping = TableMapping.of(excelSourceTable, ebxTargetTable); List<ExcelField> csvFields = excelSourceTable.getTable().getFields(); List<EBXField> ebxFields = ebxTargetTable.getTable().getFields(); for (int i = 0; i < ebxFields.size(); i++) { tableMapping.mapFields(csvFields.get(i), ebxFields.get(i)); }
Create an instance of DataIntegrationSpec
:
MappingSpec mappingSpec = MappingSpec.of(tableMapping); DataIntegrationSpec dataIntegrationSpec = new DataIntegrationSpec(session, mappingSpec);
Execute the DataIntegrationSpec
and get results:
DataIntegrationExecutionResults importResults = DataIntegrationExecutor.getInstance().execute(dataIntegrationSpec);
Create an instance of EBXSourceTable
:
EBXSourceTableSpec ebxSourceTableSpec = EBXSourceTableSpec .newBuilder(adaptationTable, session) .setForeignKeyHierarchyIncluded(false) // when both sides are EBX, foreign keys should be configured as normal fields, not a hierarchies .build(); EBXSourceTable ebxSourceTable = EBXSourceTable.newInstance(ebxSourceTableSpec);
Create an instance of EBXTargetTable
:
EBXTargetTableSpec targetTableSpec = EBXTargetTableSpec .newBuilder(adaptationTable, session) .setWriteMode(EBXWriteMode.UPDATE_OR_INSERT) .setNullOrEmptyPrimaryKeyAllowed(false) .setForeignKeyHierarchyIncluded(false) // when both sides are EBX, foreign keys should be configured as normal fields, not a hierarchies .build(); EBXTargetTable ebxTargetTable = EBXTargetTable.newInstance(targetTableSpec);
Create an instance of TableMapping
with FieldMatcher
:
TableMapping<EBXField, EBXField> tableMapping = TableMapping.of(excelSourceTable, ebxTargetTable); List<EBXField> sourceFields = ebxSourceTable.getTable().getFields(); List<EBXField> targetFields = ebxTargetTable.getTable().getFields(); tableMapping.mapFieldsWithMatcher(sourceFields, targetFields, FieldMatcher.getMatcherByLabelIgnoreCase());
Create an instance of DataIntegrationSpec
:
MappingSpec mappingSpec = MappingSpec.of(tableMapping); DataIntegrationSpec dataIntegrationSpec = new DataIntegrationSpec(session, mappingSpec);
Execute the DataIntegrationSpec
and get results:
DataIntegrationExecutionResults transferResults = DataIntegrationExecutor.getInstance().execute(dataIntegrationSpec);
Create an instance of CSVExportTemplateSpec
:
CSVExportTemplateSpec templateSpec = new CSVExportTemplateSpec( "7c67ed6a-3106-47b0-9bf8-0440e6238657", // this's template UUID, you can get from admin page. outputFile, session);
Execute the CSVExportTemplateSpec
and get results:
DataIntegrationExecutionResults exportResults = DataIntegrationExecutor.getInstance().execute(templateSpec);
Please refer to package com.orchestranetworks.addon.dint.template
for more examples.