mirror of
https://github.com/Athou/commafeed.git
synced 2026-03-21 21:37:29 +00:00
reuse previous disabled period if available
This commit is contained in:
@@ -79,7 +79,7 @@ public class FeedRefreshWorker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void update(Feed feed) {
|
private void update(Feed feed) {
|
||||||
|
Date now = Calendar.getInstance().getTime();
|
||||||
try {
|
try {
|
||||||
FetchedFeed fetchedFeed = fetcher.fetch(feed.getUrl(), false,
|
FetchedFeed fetchedFeed = fetcher.fetch(feed.getUrl(), false,
|
||||||
feed.getLastModifiedHeader(), feed.getEtagHeader());
|
feed.getLastModifiedHeader(), feed.getEtagHeader());
|
||||||
@@ -93,7 +93,7 @@ public class FeedRefreshWorker {
|
|||||||
fetchedFeed.getPublishedDate(), entries);
|
fetchedFeed.getPublishedDate(), entries);
|
||||||
}
|
}
|
||||||
|
|
||||||
feed.setLastUpdateSuccess(Calendar.getInstance().getTime());
|
feed.setLastUpdateSuccess(now);
|
||||||
feed.setLink(fetchedFeed.getFeed().getLink());
|
feed.setLink(fetchedFeed.getFeed().getLink());
|
||||||
feed.setLastModifiedHeader(fetchedFeed.getFeed()
|
feed.setLastModifiedHeader(fetchedFeed.getFeed()
|
||||||
.getLastModifiedHeader());
|
.getLastModifiedHeader());
|
||||||
@@ -114,15 +114,25 @@ public class FeedRefreshWorker {
|
|||||||
|
|
||||||
Date disabledUntil = null;
|
Date disabledUntil = null;
|
||||||
if (applicationSettingsService.get().isHeavyLoad()) {
|
if (applicationSettingsService.get().isHeavyLoad()) {
|
||||||
List<FeedEntry> feedEntries = feedEntryDAO.findByFeed(feed, 0,
|
|
||||||
10);
|
|
||||||
|
|
||||||
Date publishedDate = null;
|
Date lastUpdateSuccess = feed.getLastUpdateSuccess();
|
||||||
if (feedEntries.size() > 0) {
|
Date lastDisabledUntil = feed.getDisabledUntil();
|
||||||
publishedDate = feedEntries.get(0).getInserted();
|
if (lastUpdateSuccess != null && lastDisabledUntil != null
|
||||||
|
&& lastUpdateSuccess.before(lastDisabledUntil)) {
|
||||||
|
long millis = now.getTime() + lastDisabledUntil.getTime()
|
||||||
|
- lastUpdateSuccess.getTime();
|
||||||
|
disabledUntil = new Date(millis);
|
||||||
|
} else {
|
||||||
|
List<FeedEntry> feedEntries = feedEntryDAO.findByFeed(feed,
|
||||||
|
0, 10);
|
||||||
|
|
||||||
|
Date publishedDate = null;
|
||||||
|
if (feedEntries.size() > 0) {
|
||||||
|
publishedDate = feedEntries.get(0).getInserted();
|
||||||
|
}
|
||||||
|
disabledUntil = FeedUtils.buildDisabledUntil(publishedDate,
|
||||||
|
feedEntries);
|
||||||
}
|
}
|
||||||
disabledUntil = FeedUtils.buildDisabledUntil(publishedDate,
|
|
||||||
feedEntries);
|
|
||||||
}
|
}
|
||||||
feed.setDisabledUntil(disabledUntil);
|
feed.setDisabledUntil(disabledUntil);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user