Interface RowManager

All Known Implementing Classes:
RowManagerImpl, StateComparisonVersionStrategy.CustomUpdate

public interface RowManager
Manages rows during an insert/update/delete process. Row managers do not have to be threadsafe.
Author:
Abe White
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Flush the logical row.
    void
    Flush the secondary row; after flushing the row is available for reuse.
    getAllRows(Table table, int action)
    Return a logical row representing an update that should be made to all rows of the given table.
    getRow(Table table, int action, OpenJPAStateManager sm, boolean create)
    Return the row for the given table and owner object, or null if create is false and the row has not already been created.
    getSecondaryRow(Table table, int action)
    Return a row for the given secondary table.
  • Method Details

    • getRow

      Row getRow(Table table, int action, OpenJPAStateManager sm, boolean create)
      Return the row for the given table and owner object, or null if create is false and the row has not already been created. The action must be one of Row.ACTION_INSERT, Row.ACTION_UPDATE, Row.ACTION_DELETE.
    • getSecondaryRow

      Row getSecondaryRow(Table table, int action)
      Return a row for the given secondary table. The action must be one of Row.ACTION_INSERT, Row.ACTION_UPDATE, Row.ACTION_DELETE. Note that secondary rows are not considered when creating the foreign key dependency graph, with can cause constraint violations when using the UPDATE action. Only use this action if the secondary row does not have restrict-action foreign keys. Otherwise use both a delete and then an insert to perform the update.
    • flushSecondaryRow

      void flushSecondaryRow(Row row) throws SQLException
      Flush the secondary row; after flushing the row is available for reuse. It will retain all previously set values.
      Throws:
      SQLException
    • getAllRows

      Row getAllRows(Table table, int action)
      Return a logical row representing an update that should be made to all rows of the given table. The action must be one of Row.ACTION_UPDATE, Row.ACTION_DELETE.
    • flushAllRows

      void flushAllRows(Row row) throws SQLException
      Flush the logical row.
      Throws:
      SQLException