mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
NEW DeleteIdRequest can return beantype. Also provide alternative for deprecated 'getEbeanServer'
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package io.ebean.event;
|
||||
|
||||
import io.ebean.Database;
|
||||
import io.ebean.EbeanServer;
|
||||
import io.ebean.Transaction;
|
||||
|
||||
@@ -10,13 +11,26 @@ public interface BeanDeleteIdRequest {
|
||||
|
||||
/**
|
||||
* Return the server processing the request.
|
||||
* @deprecated use {@link #getDatabase()}
|
||||
*/
|
||||
EbeanServer getEbeanServer();
|
||||
|
||||
/**
|
||||
* Return the DB processing the request.
|
||||
*/
|
||||
default Database getDatabase() {
|
||||
return getEbeanServer();
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the Transaction associated with this request.
|
||||
*/
|
||||
Transaction getTransaction();
|
||||
|
||||
/**
|
||||
* Returns the bean type of the bean being deleted.
|
||||
*/
|
||||
Class<?> getBeanType();
|
||||
|
||||
/**
|
||||
* Returns the Id value of the bean being deleted.
|
||||
|
||||
@@ -824,7 +824,7 @@ public final class DefaultPersister implements Persister {
|
||||
|
||||
BeanPersistController controller = descriptor.getPersistController();
|
||||
if (controller != null) {
|
||||
DeleteIdRequest request = new DeleteIdRequest(server, transaction, id);
|
||||
DeleteIdRequest request = new DeleteIdRequest(server, transaction, descriptor.getBeanType(), id);
|
||||
if (idList == null) {
|
||||
controller.preDelete(request);
|
||||
} else {
|
||||
|
||||
@@ -9,11 +9,13 @@ final class DeleteIdRequest implements BeanDeleteIdRequest {
|
||||
|
||||
private final EbeanServer server;
|
||||
private final Transaction transaction;
|
||||
private Class<?> beanType;
|
||||
private Object id;
|
||||
|
||||
DeleteIdRequest(SpiEbeanServer server, Transaction transaction, Object id) {
|
||||
DeleteIdRequest(SpiEbeanServer server, Transaction transaction, Class<?> beanType, Object id) {
|
||||
this.server = server;
|
||||
this.transaction = transaction;
|
||||
this.beanType = beanType;
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
@@ -30,6 +32,11 @@ final class DeleteIdRequest implements BeanDeleteIdRequest {
|
||||
public Transaction getTransaction() {
|
||||
return transaction;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<?> getBeanType() {
|
||||
return beanType;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object getId() {
|
||||
|
||||
Reference in New Issue
Block a user