in src/main/java/com/epam/digital/data/platform/liquibase/extension/DdmParameters.java [93:116]
protected void setHistoryTableColumns() {
try {
NodeList historyFlag = getHistoryFlagNodes();
NodeList allColumns = ((Element) historyFlag.item(0)).getElementsByTagName(DdmConstants.XML_TAG_COLUMNS);
NodeList columns = ((Element) allColumns.item(0)).getElementsByTagName(DdmConstants.XML_TAG_COLUMN);
for (int i = 0; i < columns.getLength(); i++) {
if (columns.item(i).getNodeType() == Node.ELEMENT_NODE) {
Element column = (Element) columns.item(i);
DdmHistoryTableColumn historyTableColumn = new DdmHistoryTableColumn();
historyTableColumn.setName(column.getAttribute(DdmConstants.ATTRIBUTE_NAME));
historyTableColumn.setType(column.getAttribute(DdmConstants.ATTRIBUTE_TYPE));
historyTableColumn.setScope(column.getAttribute(DdmConstants.ATTRIBUTE_SCOPE));
historyTableColumn.setUniqueWithPrimaryKey(column.getAttribute(DdmConstants.ATTRIBUTE_UNIQUE_WITH_PRIMARY_KEY).equals(DdmConstants.ATTRIBUTE_TRUE));
historyTableColumn.setNullable(column.getAttribute(DdmConstants.ATTRIBUTE_NULLABLE).equals(DdmConstants.ATTRIBUTE_TRUE));
historyTableColumn.setDefaultValueComputed(column.getAttribute(DdmConstants.ATTRIBUTE_DEFAULT_VALUE_COMPUTED));
historyTableColumns.add(historyTableColumn);
}
}
} catch (ParserConfigurationException | IOException | SAXException e) {
throw new IllegalStateException(e);
}
}