org.hibernate.event.spi.AbstractPreDatabaseOperationEvent Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hibernate-core Show documentation
Show all versions of hibernate-core Show documentation
Hibernate's core ORM functionality
/*
* Hibernate, Relational Persistence for Idiomatic Java
*
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
* See the lgpl.txt file in the root directory or .
*/
package org.hibernate.event.spi;
import org.hibernate.persister.entity.EntityPersister;
/**
* Represents an operation we are about to perform against the database.
*
* @author Steve Ebersole
*/
public abstract class AbstractPreDatabaseOperationEvent extends AbstractEvent {
private final Object entity;
private final Object id;
private final EntityPersister persister;
/**
* Constructs an event containing the pertinent information.
*
* @param source The session from which the event originated.
* @param entity The entity to be involved in the database operation.
* @param id The entity id to be involved in the database operation.
* @param persister The entity's persister.
*/
public AbstractPreDatabaseOperationEvent(
EventSource source,
Object entity,
Object id,
EntityPersister persister) {
super( source );
this.entity = entity;
this.id = id;
this.persister = persister;
}
/**
* Retrieves the entity involved in the database operation.
*
* @return The entity.
*
* @deprecated Support for JACC will be removed in 6.0
*/
@Deprecated
public Object getEntity() {
return entity;
}
/**
* The id to be used in the database operation.
*
* @return The id.
*/
public Object getId() {
return id;
}
/**
* The persister for the entity.
*
* @return The entity persister.
*/
public EntityPersister getPersister() {
return persister;
}
/**
* Getter for property 'source'. This is the session from which the event
* originated.
*
* Some of the pre-* events had previous exposed the event source using
* getSource() because they had not originally extended from
* {@link AbstractEvent}.
*
* @return Value for property 'source'.
*
* @deprecated Use {@link #getSession} instead
*/
@Deprecated
public EventSource getSource() {
return getSession();
}
}