package com.ctp.cdi.query.test.service;
import javax.inject.Inject;
import javax.persistence.EntityManager;
import com.ctp.cdi.query.spi.DelegateQueryHandler;
import com.ctp.cdi.query.spi.QueryInvocationContext;
public class MyEntityDaoDelegate<E> implements DelegateQueryHandler, MyEntityDao<E> {
@Inject
private QueryInvocationContext context;
@Override
public E saveAndFlushAndRefresh(E entity) {
entityManager().persist(entity);
entityManager().flush();
entityManager().refresh(entity);
return entity;
}
private EntityManager entityManager() {
return context.getEntityManager();
}
}