diff --git a/src/main/java/com/commafeed/backend/HttpGetter.java b/src/main/java/com/commafeed/backend/HttpGetter.java index e97ab72c..8d42e87e 100644 --- a/src/main/java/com/commafeed/backend/HttpGetter.java +++ b/src/main/java/com/commafeed/backend/HttpGetter.java @@ -42,7 +42,7 @@ import org.apache.http.params.HttpProtocolParams; import org.apache.http.util.EntityUtils; /** - * Smart HTTP getter + * Smart HTTP getter: handles gzip, ssl, last modified and etag headers * */ @Slf4j @@ -110,14 +110,14 @@ public class HttpGetter { response = client.execute(httpget); int code = response.getStatusLine().getStatusCode(); if (code == HttpStatus.SC_NOT_MODIFIED) { - throw new NotModifiedException("304 http code"); + throw new NotModifiedException("'304 - not modified' http code received"); } else if (code >= 300) { throw new HttpResponseException(code, "Server returned HTTP error code " + code); } } catch (HttpResponseException e) { if (e.getStatusCode() == HttpStatus.SC_NOT_MODIFIED) { - throw new NotModifiedException("304 http code"); + throw new NotModifiedException("'304 - not modified' http code received"); } else { throw e; } diff --git a/src/main/java/com/commafeed/backend/feeds/FeedRefreshUpdater.java b/src/main/java/com/commafeed/backend/feeds/FeedRefreshUpdater.java index fc64d27e..e7d17fef 100644 --- a/src/main/java/com/commafeed/backend/feeds/FeedRefreshUpdater.java +++ b/src/main/java/com/commafeed/backend/feeds/FeedRefreshUpdater.java @@ -101,8 +101,9 @@ public class FeedRefreshUpdater { boolean ok = true; Feed feed = context.getFeed(); List entries = context.getEntries(); - if (entries.isEmpty() == false) { - + if (entries.isEmpty()) { + feed.setMessage("Feed has no entries"); + } else { List lastEntries = cache.getLastEntries(feed); List currentEntries = Lists.newArrayList(); @@ -125,6 +126,10 @@ public class FeedRefreshUpdater { } cache.setLastEntries(feed, currentEntries); + if (subscriptions == null) { + feed.setMessage("No new entries found"); + } + if (CollectionUtils.isNotEmpty(subscriptions)) { List users = Lists.newArrayList(); for (FeedSubscription sub : subscriptions) { diff --git a/src/main/java/com/commafeed/backend/feeds/FeedRefreshWorker.java b/src/main/java/com/commafeed/backend/feeds/FeedRefreshWorker.java index e2052b72..7fb0d687 100644 --- a/src/main/java/com/commafeed/backend/feeds/FeedRefreshWorker.java +++ b/src/main/java/com/commafeed/backend/feeds/FeedRefreshWorker.java @@ -124,7 +124,7 @@ public class FeedRefreshWorker { disabledUntil = FeedUtils.buildDisabledUntil(feed.getLastEntryDate(), feed.getAverageEntryInterval(), disabledUntil); } feed.setErrorCount(0); - feed.setMessage(null); + feed.setMessage(e.getMessage()); feed.setDisabledUntil(disabledUntil); taskGiver.giveBack(feed); diff --git a/src/main/resources/i18n/en.properties b/src/main/resources/i18n/en.properties index fe375c0f..6f908cef 100644 --- a/src/main/resources/i18n/en.properties +++ b/src/main/resources/i18n/en.properties @@ -78,6 +78,7 @@ details.category=Category details.position=Position details.last_refresh=Last refresh details.next_refresh=Next refresh +details.message=Message details.queued_for_refresh=Queued for refresh details.feed_url=Feed URL details.generate_api_key_first=Generate an API key in your profile first. diff --git a/src/main/webapp/templates/feeds.feed_details.html b/src/main/webapp/templates/feeds.feed_details.html index 5b42fefd..c96b605b 100644 --- a/src/main/webapp/templates/feeds.feed_details.html +++ b/src/main/webapp/templates/feeds.feed_details.html @@ -53,6 +53,13 @@ {{sub.nextRefresh|entryDate:"${details.queued_for_refresh}" }} + +
+ +
+ {{sub.message}} +
+