diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java index dff4307b..1b5306c6 100644 --- a/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java +++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/GenericDAO.java @@ -43,6 +43,14 @@ public abstract class GenericDAO { models.forEach(this::saveOrUpdate); } + public void persist(T model) { + entityManager.persist(model); + } + + public T merge(T model) { + return entityManager.merge(model); + } + public T findById(Long id) { return entityManager.find(entityClass, id); } diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java index b5df83cc..6bf9d009 100644 --- a/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java +++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/FeedRefreshUpdater.java @@ -157,7 +157,7 @@ public class FeedRefreshUpdater { feedUpdated.mark(); } - unitOfWork.run(() -> feedService.save(feed)); + unitOfWork.run(() -> feedService.update(feed)); notifyOverWebsocket(unreadCountBySubscription); diff --git a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java index 49cfd653..302c692c 100644 --- a/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java +++ b/commafeed-server/src/main/java/com/commafeed/backend/service/FeedService.java @@ -47,18 +47,18 @@ public class FeedService { feed.setNormalizedUrl(normalizedUrl); feed.setNormalizedUrlHash(normalizedUrlHash); feed.setDisabledUntil(Models.MINIMUM_INSTANT); - feedDAO.saveOrUpdate(feed); + feedDAO.persist(feed); } return feed; } - public void save(Feed feed) { + public void update(Feed feed) { String normalized = FeedUtils.normalizeURL(feed.getUrl()); feed.setNormalizedUrl(normalized); feed.setNormalizedUrlHash(Digests.sha1Hex(normalized)); feed.setLastUpdated(Instant.now()); feed.setEtagHeader(FeedUtils.truncate(feed.getEtagHeader(), 255)); - feedDAO.saveOrUpdate(feed); + feedDAO.merge(feed); } public Favicon fetchFavicon(Feed feed) {