histTable.setName(refTable.getName()); histTable.setTableQualifier(refTable.getTableQualifier()); getStart().setTable(histTable); getEnd().setTable(histTable); } else if (getMapping().isManyToManyMapping()) { histTable.setName(relationTable.getName()); histTable.setTableQualifier(relationTable.getTableQualifier()); getStart().setTable(histTable); getEnd().setTable(histTable); DatabaseField startField = (DatabaseField)getStart(0).clone(); startField.setTable(table); getStartFields().addElement(startField); } else { DatabaseField startField = getStart(i); startField.setTable(table); historyField = (DatabaseField)getStart(0).clone(); historyField.setTable(historicalTable); sortedStartFields.add(historyField);
histTable.setName(refTable.getName()); histTable.setTableQualifier(refTable.getTableQualifier()); getStart().setTable(histTable); getEnd().setTable(histTable); } else if (getMapping().isManyToManyMapping()) { histTable.setName(relationTable.getName()); histTable.setTableQualifier(relationTable.getTableQualifier()); getStart().setTable(histTable); getEnd().setTable(histTable); DatabaseField startField = getStart(0).clone(); startField.setTable(table); getStartFields().add(startField); } else { DatabaseField startField = getStart(i); startField.setTable(table); historyField = getStart(0).clone(); historyField.setTable(historicalTable); sortedStartFields.add(historyField);
histTable.setName(refTable.getName()); histTable.setTableQualifier(refTable.getTableQualifier()); getStart().setTable(histTable); getEnd().setTable(histTable); } else if (getMapping().isManyToManyMapping()) { histTable.setName(relationTable.getName()); histTable.setTableQualifier(relationTable.getTableQualifier()); getStart().setTable(histTable); getEnd().setTable(histTable); DatabaseField startField = getStart(0).clone(); startField.setTable(table); getStartFields().add(startField); } else { DatabaseField startField = getStart(i); startField.setTable(table); historyField = getStart(0).clone(); historyField.setTable(historicalTable); sortedStartFields.add(historyField);
/** * INTERNAL: * Performs a logical insert into the historical schema. Direct * collections and many to many mappings are maintained through the session * events. */ public void mappingLogicalInsert(DataModifyQuery originalQuery, AbstractRecord arguments, AbstractSession session) { DataModifyQuery historyQuery = new DataModifyQuery(); SQLInsertStatement historyStatement = new SQLInsertStatement(); DatabaseTable histTable = getHistoricalTables().get(0); historyStatement.setTable(histTable); AbstractRecord modifyRow = originalQuery.getModifyRow().clone(); AbstractRecord translationRow = arguments.clone(); // Start could be the version field in timestamp locking. if (!modifyRow.containsKey(getStart())) { Object time = getCurrentTime(session); modifyRow.add(getStart(), time); translationRow.add(getStart(), time); } historyQuery.setSQLStatement(historyStatement); historyQuery.setModifyRow(modifyRow); historyStatement.setModifyRow(modifyRow); session.executeQuery(historyQuery, translationRow); }
/** * INTERNAL: * Performs a logical insert into the historical schema. Direct * collections and many to many mappings are maintained through the session * events. */ public void mappingLogicalInsert(DataModifyQuery originalQuery, AbstractRecord arguments, AbstractSession session) { DataModifyQuery historyQuery = new DataModifyQuery(); SQLInsertStatement historyStatement = new SQLInsertStatement(); DatabaseTable histTable = getHistoricalTables().get(0); historyStatement.setTable(histTable); AbstractRecord modifyRow = originalQuery.getModifyRow().clone(); AbstractRecord translationRow = arguments.clone(); // Start could be the version field in timestamp locking. if (!modifyRow.containsKey(getStart())) { Object time = getCurrentTime(session); modifyRow.add(getStart(), time); translationRow.add(getStart(), time); } historyQuery.setSQLStatement(historyStatement); historyQuery.setModifyRow(modifyRow); historyStatement.setModifyRow(modifyRow); session.executeQuery(historyQuery, translationRow); }
/** * INTERNAL: * Performs a logical insert into the historical schema. Direct * collections and many to many mappings are maintained through the session * events. */ public void mappingLogicalInsert(DataModifyQuery originalQuery, AbstractRecord arguments, AbstractSession session) { DataModifyQuery historyQuery = new DataModifyQuery(); SQLInsertStatement historyStatement = new SQLInsertStatement(); DatabaseTable histTable = (DatabaseTable)getHistoricalTables().elementAt(0); historyStatement.setTable(histTable); AbstractRecord modifyRow = (AbstractRecord)originalQuery.getModifyRow().clone(); AbstractRecord translationRow = (AbstractRecord)arguments.clone(); // Start could be the version field in timestamp locking. if (!modifyRow.containsKey(getStart())) { Object time = getCurrentTime(session); modifyRow.add(getStart(), time); translationRow.add(getStart(), time); } historyQuery.setSQLStatement(historyStatement); historyQuery.setModifyRow(modifyRow); historyStatement.setModifyRow(modifyRow); session.executeQuery(historyQuery, translationRow); }
modifyRow.add(getStart(i), currentTime);
modifyRow.add(getStart(i), currentTime);
modifyRow.add(getStart(i), currentTime);
originalModifyRow.add(getStart(i), currentTime);