Companion to the {@link org.apache.tapestry.components.ForBean For component}, this class is an implementation of {@link org.apache.tapestry.components.IPrimaryKeyConverter} that performs someadditional handling, such as tracking value sets..
Value sets are sets of value objects maintained by the converter; the converter will provide a synthetic read/write boolean property that indicates if the {@link #getLastValue() last value} isor is not in the set.
A single built-in value set, {@link #isDeleted()} has a special purpose; it controls whether ornot values are returned from {@link #getValues()}. Subclasses may add additional synthetic boolean properties and additional sets.
Why not just store a boolean property in the object itself? Well, deleted is a good example of a property that is meaningful in the context of an operation, but isn't stored ... once an object is deleted (from secondary storage, such as a database) there's no place to store such a flag. The DefaultPrimaryKey converter is used in this context to store transient, operation data ... such as which values are to be deleted.
This class can be thought of as a successor to {@link org.apache.tapestry.form.ListEditMap}.
@author Howard M. Lewis Ship
@since 4.0