Package org.hibernate.classic
Interface Lifecycle
public interface Lifecycle
Provides callbacks from the
Session
to the persistent object.
Persistent classes may implement this interface but they are not
required to.
- onSave: called just before the object is saved
- onUpdate: called just before an object is updated,
ie. when
Session.update()
is called - onDelete: called just before an object is deleted onLoad: called just after an object is loaded
onLoad()
may be used to initialize transient properties of the
object from its persistent state. It may not be used to load
dependent objects since the Session
interface may not be
invoked from inside this method.
A further intended usage of onLoad()
, onSave()
and
onUpdate()
is to store a reference to the Session
for later use.
If onSave()
, onUpdate()
or onDelete()
return
VETO
, the operation is silently vetoed. If a
CallbackException
is thrown, the operation is vetoed and the
exception is passed back to the application.
Note that onSave()
is called after an identifier is assigned
to the object, except when identity column key generation is used.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptiondefault boolean
Called when an entity is deleted.default void
onLoad
(Session s, Serializable id) Deprecated.default void
Called after an entity is loaded.default boolean
Called when an entity is saved.default boolean
Called when an entity is passed toSession.update()
.
-
Field Details
-
VETO
static final boolean VETOReturn value to veto the action (true)- See Also:
-
NO_VETO
static final boolean NO_VETOReturn value to accept the action (false)- See Also:
-
-
Method Details
-
onSave
Called when an entity is saved.- Parameters:
s
- the session- Returns:
- true to veto save
- Throws:
CallbackException
- Indicates a problem happened during callback
-
onUpdate
Called when an entity is passed toSession.update()
. This method is not called every time the object's state is persisted during a flush.- Parameters:
s
- the session- Returns:
- true to veto update
- Throws:
CallbackException
- Indicates a problem happened during callback
-
onDelete
Called when an entity is deleted.- Parameters:
s
- the session- Returns:
- true to veto delete
- Throws:
CallbackException
- Indicates a problem happened during callback
-
onLoad
Called after an entity is loaded. It is illegal to access theSession
from inside this method. However, the object may keep a reference to the session for later use.- Parameters:
s
- the sessionid
- the identifier
-
onLoad
Deprecated.Called after an entity is loaded. It is illegal to access theSession
from inside this method. However, the object may keep a reference to the session for later use.- Parameters:
s
- the sessionid
- the identifier
-
onLoad(Session, Object)