Package org.hibernate.event.spi
Class AbstractCollectionEvent
- java.lang.Object
-
- org.hibernate.event.spi.AbstractEvent
-
- org.hibernate.event.spi.AbstractCollectionEvent
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
InitializeCollectionEvent,PostCollectionRecreateEvent,PostCollectionRemoveEvent,PostCollectionUpdateEvent,PreCollectionRecreateEvent,PreCollectionRemoveEvent,PreCollectionUpdateEvent
public abstract class AbstractCollectionEvent extends AbstractEvent
Defines a base class for events involving collections.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description AbstractCollectionEvent(CollectionPersister collectionPersister, PersistentCollection collection, EventSource source, Object affectedOwner, Serializable affectedOwnerId)Constructs an AbstractCollectionEvent object.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetAffectedOwnerEntityName()Get the entity name for the collection owner entity that is affected by this event.protected static StringgetAffectedOwnerEntityName(CollectionPersister collectionPersister, Object affectedOwner, EventSource source)SerializablegetAffectedOwnerIdOrNull()Get the ID for the collection owner entity that is affected by this event.ObjectgetAffectedOwnerOrNull()Get the collection owner entity that is affected by this event.PersistentCollectiongetCollection()protected static CollectionPersistergetLoadedCollectionPersister(PersistentCollection collection, EventSource source)protected static SerializablegetLoadedOwnerIdOrNull(PersistentCollection collection, EventSource source)protected static ObjectgetLoadedOwnerOrNull(PersistentCollection collection, EventSource source)protected static SerializablegetOwnerIdOrNull(Object owner, EventSource source)-
Methods inherited from class org.hibernate.event.spi.AbstractEvent
getSession
-
-
-
-
Constructor Detail
-
AbstractCollectionEvent
public AbstractCollectionEvent(CollectionPersister collectionPersister, PersistentCollection collection, EventSource source, Object affectedOwner, Serializable affectedOwnerId)
Constructs an AbstractCollectionEvent object.- Parameters:
collection- - the collectionsource- - the Session sourceaffectedOwner- - the owner that is affected by this event; can be null if unavailableaffectedOwnerId- - the ID for the owner that is affected by this event; can be null if unavailable that is affected by this event; can be null if unavailable
-
-
Method Detail
-
getLoadedCollectionPersister
protected static CollectionPersister getLoadedCollectionPersister(PersistentCollection collection, EventSource source)
-
getLoadedOwnerOrNull
protected static Object getLoadedOwnerOrNull(PersistentCollection collection, EventSource source)
-
getLoadedOwnerIdOrNull
protected static Serializable getLoadedOwnerIdOrNull(PersistentCollection collection, EventSource source)
-
getOwnerIdOrNull
protected static Serializable getOwnerIdOrNull(Object owner, EventSource source)
-
getAffectedOwnerEntityName
protected static String getAffectedOwnerEntityName(CollectionPersister collectionPersister, Object affectedOwner, EventSource source)
-
getCollection
public PersistentCollection getCollection()
-
getAffectedOwnerOrNull
public Object getAffectedOwnerOrNull()
Get the collection owner entity that is affected by this event.- Returns:
- the affected owner; returns null if the entity is not in the persistence context (e.g., because the collection from a detached entity was moved to a new owner)
-
getAffectedOwnerIdOrNull
public Serializable getAffectedOwnerIdOrNull()
Get the ID for the collection owner entity that is affected by this event.- Returns:
- the affected owner ID; returns null if the ID cannot be obtained from the collection's loaded key (e.g., a property-ref is used for the collection and does not include the entity's ID)
-
getAffectedOwnerEntityName
public String getAffectedOwnerEntityName()
Get the entity name for the collection owner entity that is affected by this event.- Returns:
- the entity name; if the owner is not in the PersistenceContext, the returned value may be a superclass name, instead of the actual class name
-
-