org.hibernate.action
Class CollectionAction

java.lang.Object
  extended by org.hibernate.action.CollectionAction
All Implemented Interfaces:
Serializable, Comparable, Executable
Direct Known Subclasses:
CollectionRecreateAction, CollectionRemoveAction, CollectionUpdateAction

public abstract class CollectionAction
extends Object
implements Executable, Serializable, Comparable

Any action relating to insert/update/delete of a collection

Author:
Gavin King
See Also:
Serialized Form

Constructor Summary
CollectionAction(CollectionPersister persister, PersistentCollection collection, Serializable key, SessionImplementor session)
           
 
Method Summary
 void afterTransactionCompletion(boolean success)
          Called after the transaction completes
 void beforeExecutions()
          Called before executing any actions
 int compareTo(Object other)
           
protected  void evict()
           
protected  PersistentCollection getCollection()
           
protected  Serializable getKey()
           
protected  CollectionPersister getPersister()
           
 Serializable[] getPropertySpaces()
          What spaces (tables) are affected by this action?
protected  SessionImplementor getSession()
           
 boolean hasAfterTransactionCompletion()
          Do we need to retain this instance until after the transaction completes?
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.hibernate.action.Executable
execute
 

Constructor Detail

CollectionAction

public CollectionAction(CollectionPersister persister,
                        PersistentCollection collection,
                        Serializable key,
                        SessionImplementor session)
                 throws CacheException
Throws:
CacheException
Method Detail

getCollection

protected PersistentCollection getCollection()

afterTransactionCompletion

public void afterTransactionCompletion(boolean success)
                                throws CacheException
Description copied from interface: Executable
Called after the transaction completes

Specified by:
afterTransactionCompletion in interface Executable
Throws:
CacheException

hasAfterTransactionCompletion

public boolean hasAfterTransactionCompletion()
Description copied from interface: Executable
Do we need to retain this instance until after the transaction completes?

Specified by:
hasAfterTransactionCompletion in interface Executable
Returns:
false if this class defines a no-op hasAfterTransactionCompletion()

getPropertySpaces

public Serializable[] getPropertySpaces()
Description copied from interface: Executable
What spaces (tables) are affected by this action?

Specified by:
getPropertySpaces in interface Executable

getPersister

protected final CollectionPersister getPersister()

getKey

protected final Serializable getKey()

getSession

protected final SessionImplementor getSession()

beforeExecutions

public final void beforeExecutions()
                            throws CacheException
Description copied from interface: Executable
Called before executing any actions

Specified by:
beforeExecutions in interface Executable
Throws:
CacheException

evict

protected final void evict()
                    throws CacheException
Throws:
CacheException

toString

public String toString()
Overrides:
toString in class Object

compareTo

public int compareTo(Object other)
Specified by:
compareTo in interface Comparable