net.sf.jaxme.js.pattern
Interface VersionGenerator.ColumnUpdater

Enclosing interface:
VersionGenerator

public static interface VersionGenerator.ColumnUpdater

The ColumnUpdater is able to update one or more columns in a table. Such a column update is required, because the cloned tables must not have the same primary key.

The typical use is to specify a ColumnUpdater for the head table, which bumps the version number. For any child table you could specify a ColumnUpdater which generates a new primary key.


Method Summary
 void update(JavaMethod pMethod, VersionGenerator.TableInfo pTableInfo, DirectAccessible pConnection, DirectAccessible pMap, DirectAccessible pRow)
          Generates code for updating a table row.
 

Method Detail

update

public void update(JavaMethod pMethod,
                   VersionGenerator.TableInfo pTableInfo,
                   DirectAccessible pConnection,
                   DirectAccessible pMap,
                   DirectAccessible pRow)

Generates code for updating a table row. The row is supplied as an array of objects. The order of objects matches the columns of the given table.

Parameters:
pMethod - The method being created; may be used to generate local fields, etc.
pTableInfo - The table being updated
pMap - A local Java field with a Map of rows, that have already been cloned. The keys and values are both instances of the generated inner class DataCache. The keys are holding the primary keys of the original rows (which have been cloned) and the values are the primary keys of the created rows (the generated clones).
pConnection - A local Java field with an open database connection
pRow - A local Java field with an array of values being cloned