INNER CODE UNIT · Java
deleteEntity
chaokunyang/jkes · jkes-boot/jkes-spring-data-jpa/src/main/java/com/timeyang/jkes/spring/jpa/EventSupport.java:230
private void deleteEntity(Object entity, LinkedList<Object> context) {
if(entity == null) return;
context.addLast(entity);
Object id = ReflectionUtils.getAnnotatedFieldValue(entity, Id.class);
if(id == null)
id = ReflectionUtils.getAnnotatedMethodReturnValue(entity, Id.class);
if(id == null)
throw new EventPublishException("Can't get entity id from " + entity);
Class<?> domainClass = entity.getClass();
String index = DocumentUtils.getIndexName(domainClass);
String type = DocumentUtils.getTypeName(domainClass);
EventContainer.addEvent(new Event.DeleteEvent(Event.EventType.DELETE, id, index, type, null));
Collection<Object> cascadeEntity = getCascadeEntity(entity, context);