@Override public void fireBeforeSelectTriggers() { for (TableFilter filter : filters) { filter.getTable().fire(session, Trigger.SELECT, true); } }
@Override public int update() { // clear list of source table keys & rowids we have processed already targetRowidsRemembered.clear(); if (targetTableFilter != null) { targetTableFilter.startQuery(session); targetTableFilter.reset(); } if (sourceTableFilter != null) { sourceTableFilter.startQuery(session); sourceTableFilter.reset(); } sourceQueryRowNumber = 0; checkRights(); setCurrentRowNumber(0); // process source select query data for row creation ResultInterface rows = query.query(0); targetTable.fire(session, evaluateTriggerMasks(), true); targetTable.lock(session, true, false); while (rows.next()) { sourceQueryRowNumber++; Value[] sourceRowValues = rows.currentRow(); Row sourceRow = new RowImpl(sourceRowValues, 0); setCurrentRowNumber(sourceQueryRowNumber); merge(sourceRow); } rows.close(); targetTable.fire(session, evaluateTriggerMasks(), false); return countUpdatedRows; }
public void fireBefore(Session session) throws SQLException { // TODO trigger: for sql server compatibility, // should send list of rows, not just 'the event' fire(session, true); }
public void fireAfter(Session session) throws SQLException { fire(session, false); }
@Override public void fireBeforeSelectTriggers() { for (int i = 0, size = filters.size(); i < size; i++) { TableFilter filter = filters.get(i); filter.getTable().fire(session, Trigger.SELECT, true); } }
@Override public void fireBeforeSelectTriggers() { for (int i = 0, size = filters.size(); i < size; i++) { TableFilter filter = filters.get(i); filter.getTable().fire(session, Trigger.SELECT, true); } }