Package org.hibernate.persister.collection.mutation
@Incubating
package org.hibernate.persister.collection.mutation
Defines support for performing mutation operations against collections.
- API Note:
- The names used here are logical. E.g. "inserting a row" may actually
execute an UPDATE statement instead of an INSERT. This is generally
delineated based on whether there is a collection table involved or
not. In terms of our usual model, this breaks down to the distinction
between
BasicCollectionPersister
andOneToManyPersister
.
-
ClassDescriptionBase contract for coordination of collection mutation operationsCoordinates the deletion of entries removed from the collection - For collections with a collection-table, deletes rows from the collection table.DeleteRowsCoordinator implementation for cases where deletion is not enabledOneToMany delete coordinator if the element is a
UnionSubclassEntityPersister
.Coordinates the logical insertion of collection entries which are not yet persistent.A tri-predicate for including / excluding collection entries from iterative processing insideInsertRowsCoordinator.insertRows(org.hibernate.collection.spi.PersistentCollection<?>, java.lang.Object, org.hibernate.persister.collection.mutation.InsertRowsCoordinator.EntryFilter, org.hibernate.engine.spi.SharedSessionContractImplementor)
.OneToMany insert coordinator if the element is aUnionSubclassEntityPersister
.Callback for producing aJdbcMutationOperation
given a collection-table referenceRemoves the collection: For collections with a collection-table, this will execute a DELETE based on the collection-key For one-to-many collections, this executes an UPDATE to unset the collection-key on the association tableHandles complete removal of a collection by its keyOneToMany remove coordinator if the element is aUnionSubclassEntityPersister
.Composition of theMutationOperation
references for a collection mapping.UpdateRowsCoordinator implementation for cases with a separate collection tableOneToMany update coordinator if the element is aUnionSubclassEntityPersister
.