forked from Archives/Athou_commafeed
try to fix "Illegal attempt to associate a ManagedEntity with two open persistence contexts"
This commit is contained in:
@@ -43,6 +43,14 @@ public abstract class GenericDAO<T extends AbstractModel> {
|
|||||||
models.forEach(this::saveOrUpdate);
|
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) {
|
public T findById(Long id) {
|
||||||
return entityManager.find(entityClass, id);
|
return entityManager.find(entityClass, id);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ public class FeedRefreshUpdater {
|
|||||||
feedUpdated.mark();
|
feedUpdated.mark();
|
||||||
}
|
}
|
||||||
|
|
||||||
unitOfWork.run(() -> feedService.save(feed));
|
unitOfWork.run(() -> feedService.update(feed));
|
||||||
|
|
||||||
notifyOverWebsocket(unreadCountBySubscription);
|
notifyOverWebsocket(unreadCountBySubscription);
|
||||||
|
|
||||||
|
|||||||
@@ -47,18 +47,18 @@ public class FeedService {
|
|||||||
feed.setNormalizedUrl(normalizedUrl);
|
feed.setNormalizedUrl(normalizedUrl);
|
||||||
feed.setNormalizedUrlHash(normalizedUrlHash);
|
feed.setNormalizedUrlHash(normalizedUrlHash);
|
||||||
feed.setDisabledUntil(Models.MINIMUM_INSTANT);
|
feed.setDisabledUntil(Models.MINIMUM_INSTANT);
|
||||||
feedDAO.saveOrUpdate(feed);
|
feedDAO.persist(feed);
|
||||||
}
|
}
|
||||||
return feed;
|
return feed;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void save(Feed feed) {
|
public void update(Feed feed) {
|
||||||
String normalized = FeedUtils.normalizeURL(feed.getUrl());
|
String normalized = FeedUtils.normalizeURL(feed.getUrl());
|
||||||
feed.setNormalizedUrl(normalized);
|
feed.setNormalizedUrl(normalized);
|
||||||
feed.setNormalizedUrlHash(Digests.sha1Hex(normalized));
|
feed.setNormalizedUrlHash(Digests.sha1Hex(normalized));
|
||||||
feed.setLastUpdated(Instant.now());
|
feed.setLastUpdated(Instant.now());
|
||||||
feed.setEtagHeader(FeedUtils.truncate(feed.getEtagHeader(), 255));
|
feed.setEtagHeader(FeedUtils.truncate(feed.getEtagHeader(), 255));
|
||||||
feedDAO.saveOrUpdate(feed);
|
feedDAO.merge(feed);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Favicon fetchFavicon(Feed feed) {
|
public Favicon fetchFavicon(Feed feed) {
|
||||||
|
|||||||
Reference in New Issue
Block a user