diff --git a/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java b/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java index f0ffaf16..6feef75a 100644 --- a/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java +++ b/src/main/java/com/commafeed/backend/dao/FeedEntryDAO.java @@ -5,6 +5,7 @@ import java.util.List; import javax.ejb.Stateless; import javax.persistence.TypedQuery; import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.JoinType; import javax.persistence.criteria.Root; import javax.persistence.criteria.SetJoin; @@ -14,7 +15,6 @@ import com.commafeed.backend.model.Feed; import com.commafeed.backend.model.FeedEntry; import com.commafeed.backend.model.FeedEntry_; import com.commafeed.backend.model.Feed_; -import com.uaihebert.model.EasyCriteria; @Stateless public class FeedEntryDAO extends GenericDAO { @@ -22,12 +22,12 @@ public class FeedEntryDAO extends GenericDAO { public List findByGuid(String guid) { String hash = DigestUtils.sha1Hex(guid); - EasyCriteria criteria = createCriteria(); - criteria.setDistinctTrue(); - criteria.andEquals(FeedEntry_.guidHash.getName(), hash); - criteria.leftJoinFetch(FeedEntry_.feeds.getName()); - - return criteria.getResultList(); + CriteriaQuery query = builder.createQuery(getType()); + Root root = query.from(getType()); + query.where(builder.equal(root.get(FeedEntry_.guidHash), hash)); + root.fetch(FeedEntry_.feeds, JoinType.LEFT); + TypedQuery q = em.createQuery(query); + return q.getResultList(); } public List findByFeed(Feed feed, int offset, int limit) {