public class TableObjectBuilder extends AbstractBusinessObjectBuilder
This table object builder is an extension to the concept of a business object builder for data load. The table object builder is responsible for accepting data read by the data reader and constructing value objects representing physical tables (table data objects) in the data base. The partially populated table data objects will then be passed to the business object mediator for additional population.
The table object builder will populate the table data object using all column values which are from the input data and fixed value. The values which are from business context and need to be resolved by ID resolution are populated later in the TableObjectMediator.
Constructor and Description |
---|
TableObjectBuilder() |
Modifier and Type | Method and Description |
---|---|
void | init()
This method calls the AbstractBusinessObjectBuilder classes init method and also performs initialization specific to this class.
|
protected DataLoadBusinessObject | populateDataLoadBusinessObject(java.lang.Object inputData)
This method implements the abstract method defined in the super class.
|
protected void | populateTableObjectUsingColumnConfig(ExtendedTableDataObject extendedTableDataObject, ColumnConfigProperties columnConfigProperties, java.util.Map inputData)
This method will populate the table data object using the configured column and data mapping information.
|
protected void | processData(BusinessObjectMediator businessObjectMediator, DataLoadBusinessObject bod)
This method checks the logical data object's input data is non-empty and calls the superclass to process the data.
|
public void init() throws DataLoadException
This method calls the AbstractBusinessObjectBuilder classes init method and also performs initialization specific to this class.
This method will use the configuration read in for the the business object builder, namely the Table element information and initialize a set of table data objects
protected void processData(BusinessObjectMediator businessObjectMediator, DataLoadBusinessObject bod) throws DataLoadException
This method checks the logical data object's input data is non-empty and calls the superclass to process the data.
protected DataLoadBusinessObject populateDataLoadBusinessObject(java.lang.Object inputData) throws DataLoadException
This method implements the abstract method defined in the super class. It will populate the data object that will later be mediated.
protected void populateTableObjectUsingColumnConfig(ExtendedTableDataObject extendedTableDataObject, ColumnConfigProperties columnConfigProperties, java.util.Map inputData) throws DataLoadException
This method will populate the table data object using the configured column and data mapping information. This method is called by the populateDataLoadBusinessObject method and passed the initialized unpopulated table data object, the configured column information as well as the input data read by the data reader.
This method should be overridden by a subclass if the behavior of the options below is not sufficient to determine the data needed to be set for a column in a table.
For example, if it is desired to add additional 'valueFrom' support, or override the behavior of the 'valueFrom' options below.
Current support for the column data mapping (valueFrom attribute):